GNU watch - como faço para ler meu ambiente (aliases, funções, etc)

4

Este vem me incomodando há algum tempo: Eu quero usar o maravilhoso comando watch do GNU para executar alguns aliases e funções customizadas que estão definidas no meu .bashrc, mas ele nunca é capaz de executar nada exceto o bash built-ins ou binários.

watch -d foo

A saída é sempre: foo: command not found

Como posso herdar meu ambiente ou usar o .bashrc?

Obrigado.

    
por Artem Russakovskii 18.03.2010 / 00:09

2 respostas

7

Faça algo parecido com isto watch bash -i -c 'alias -p' isto deve chamar bash, carregar suas configurações e então executar qualquer comando que você tenha após o -c

    
por 18.03.2010 / 02:25
1

De man watch :

Note that command is given to "sh -c"

Portanto, não verá seus aliases e funções de Bash.

    
por 18.03.2010 / 00:36