Alias desconhecido após o SSH

2
$ grep alias ~/.bashrc
# User specific aliases and functions
. ~/.alias

$ grep mydiff ~/.alias
alias mydiff='diff --ignore-space-change --ignore-blank-lines --side-by-side --suppress-common-lines'

$ alias mydiff
alias mydiff='diff --ignore-space-change --ignore-blank-lines --side-by-side --suppress-common-lines'

$ ssh -q localhost 'alias mydiff'
alias mydiff='diff --ignore-space-change --ignore-blank-lines --side-by-side --suppress-common-lines'

$ ssh -q localhost 'mydiff'
bash: mydiff: command not found

Por que o "mydiff" não está disponível por meio do SSH? Obrigado

    
por jsf80238 06.01.2015 / 23:25

1 resposta

2

de man bash(1) :

   Aliases  are not expanded when the shell is not interactive, unless the
   expand_aliases shell option is set using shopt (see the description  of
   shopt under SHELL BUILTIN COMMANDS below).

adicione a seguinte linha ao seu arquivo .bashrc :

shopt -s expand_aliases

ou:

[alexus@wcmisdlin02 ~]$ ssh 0 'bash -c ll | head -1'
bash: ll: command not found
[alexus@wcmisdlin02 ~]$ ssh 0 'bash -ci ll | head -1'
bash: no job control in this shell
total 8612
[alexus@wcmisdlin02 ~]$ 
    
por 06.01.2015 / 23:48

Tags