ssh alias 실행 안되는 문제

# ssh 로 호스트에 명령을 실행할때 alias 로 지정된 키워드가 실행 안되는 경우가 있다.
# 일반 쉘 명령은 실행된다.
ssh ysoftman@ysoftman-centos7 "ls"

# 하지만 호스트에 alias 설정된 키워드 실행시 찾을 수 없다는 에러가 발생한다.
ssh ysoftman@ysoftman-centos7 "myls"
bash: myls: command not found

# 이유는 interactive 로 쉘이 실행되지 않으면 alias 를 쓸수 없는 경우로
# ~/.bashrc 에 다음과 같이 쉘 옵션을 설정해줘야 한다.
shopt -s expand_aliases

# 그리고 스크립트에 alias 가 있을때 . a.sh 실행은 되지만
# expand_aliases 가 없으면 bash a.sh 는 echoysoftman command not found 발생한다.
# 참고로 shopt 는 bash built-in 명령으로 zsh 에서는 사용할 수 없는 명령이다.
# alias script example
shopt -s expand_aliases
alias echoysoftman="echo ysoftman"
echoysoftman

comments:

댓글 쓰기