Fórum Ubuntu Linux - PT
23 de Maio de 2013, 11:42 *
Olá, Visitante. Faça o login ou registre-se.
Perdeu o seu e-mail de ativação?

Login com nome de usuário, senha e duração da sessão
Notícias: Atualização no plugin de busca para Firefox e Internet Explorer.
 
   Home   Ajuda Regras Pesquisa Login Registre-se  
Anúncios
Páginas: [1]   Ir para o fundo
  Imprimir  
Autor Tópico: executar comando ao parar o script  (Lida 662 vezes)
sigur
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 716


Ver Perfil
« em: 18 de Agosto de 2012, 12:54 »

Pessoal, eu fiz um arquivo .sh que abre um editor de texto já com um monte de coisa digitada, pra que eu não precise ficar abrindo o modelo esalvando com outro nome, pra manter o modelo original.

Então, quando preciso, apenas uso no terminal e chamo um modelo novinho, criado na hora com um monte de echo.

Pois bem, mas eu queria fazer o seguinte: ao fechar o editor, o terminal volta ao início, ou seja, volto pro $. Eu queria, ao fechar o editor, antes de parar o script, queria remover alguns arquivos temporários criados.

Mas não posso colocar depois da linha 'gedit bla.txt' linhas com 'rm bla.log', pois esses temporários só serão criados quando eu mexer no meu arquivo. Então, teria que ter uma espécie de pausa no script.

Como fazer? Alguma ajuda? Valeu.
Registrado
irtigor
Equipe Ubuntu
Usuário Ubuntu
*****
Deslogado Deslogado

Mensagens: 3.218


Delete, delete, delete!


Ver Perfil
« Responder #1 em: 18 de Agosto de 2012, 13:17 »

Código:
gedit foo
[[ -e bla ]] && rm bla

(sim, você já viu algumas vezes, e nesse cenário parece complemente desnecessário)
Registrado
sigur
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 716


Ver Perfil
« Responder #2 em: 18 de Agosto de 2012, 14:12 »

Código:
gedit foo
[[ -e bla ]] && rm bla

(sim, você já viu algumas vezes, e nesse cenário parece complemente desnecessário)

Obrigado irtigor. Só não entendi seu comentário entre ().
Valeu.
Registrado
irtigor
Equipe Ubuntu
Usuário Ubuntu
*****
Deslogado Deslogado

Mensagens: 3.218


Delete, delete, delete!


Ver Perfil
« Responder #3 em: 18 de Agosto de 2012, 14:38 »

Qual parte? O "desnecessário"? É que isso não é melhor que

Código:
gedit foo
rm bar
Registrado
sigur
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 716


Ver Perfil
« Responder #4 em: 18 de Agosto de 2012, 14:43 »

Qual parte? O "desnecessário"? É que isso não é melhor que

Código:
gedit foo
rm bar

Não entendi a frase toda. Bem, a minha dúvida era se, ao colocar no script, duas linhas:
Código:
gedit bla
rm bla.*

se esse rm só seria executado depois de fechar o gedit ou se ele seria executado logo após abrir o gedit. Queria colocar os comandos de rm no script, pois são vários arquivos auxiliares que eu quero remover.

Valeu.
Registrado
irtigor
Equipe Ubuntu
Usuário Ubuntu
*****
Deslogado Deslogado

Mensagens: 3.218


Delete, delete, delete!


Ver Perfil
« Responder #5 em: 18 de Agosto de 2012, 14:53 »

Tudo é executado linha por linha (de forma alguma a linha 50 é executada antes da 49 terminar, por exemplo).
Registrado
sigur
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 716


Ver Perfil
« Responder #6 em: 18 de Agosto de 2012, 15:02 »

Tudo é executado linha por linha (de forma alguma a linha 50 é executada antes da 49 terminar, por exemplo).

Ah, então tá, agora concordo que basta colocar o rm depois. Valeu. Pensei que, uma vez aberto o gedit, a linha já teria sido executada por completo e a próxima seria então executada. Mas pra executar tudo, precisa fechar o gedit. Valeu.
Registrado
irtigor
Equipe Ubuntu
Usuário Ubuntu
*****
Deslogado Deslogado

Mensagens: 3.218


Delete, delete, delete!


Ver Perfil
« Responder #7 em: 18 de Agosto de 2012, 20:41 »

Você pode ter esse efeito com "gedit foo &", porque traduzindo o comando é "passe o que está antes do sinal tironiano para um subshell", tarefa que não deve levar mais que alguns milissegundos.
Registrado
sigur
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 716


Ver Perfil
« Responder #8 em: 18 de Agosto de 2012, 20:44 »

Você pode ter esse efeito com "gedit foo &", porque traduzindo o comando é "passe o que está antes do sinal tironiano para um subshell", tarefa que não deve levar mais que alguns milissegundos.

Entendi. Muito obrigado pela explicação. Está funcionando bem. Só preciso corrigir outras coisas, referentes ao gtk. Mas isso é outra história.
Registrado
Páginas: [1]   Ir para o topo
  Imprimir  
 
Ir para:  

Powered by MySQL Powered by PHP Tema desenvolvido por FaBMak e n3t0
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines
© 2013 Canonical Ltd. Ubuntu e Canonical são marcas registradas da Canonical Ltd.
XHTML 1.0 válido! CSS válido!