내 별칭이 정의되어 있습니다. .bashrc
alias l.='ls -d .* --color=auto'
매우 유용합니다 🙂 그러나 다음을 통해 작동하지 않습니다 ssh
.
$ ssh localhost l.
bash: l.: command not found
왜 그런 겁니까?
답변
시험:
ssh localhost -t bash -ci l.
노트 :
-
별명은
~/.bashrc
로컬 시스템이 아닌 원격 서버에 있어야합니다 . -
이
-i
옵션은bash
대화식 쉘을 실행하도록 지시 합니다. 별명은 기본적으로 대화식 쉘에서만 사용 가능합니다. -
-t
옵션 알려줍니다ssh
의사 청각 장애를 할당 할 수 있습니다. 이 옵션이 없으면bash
대화식 모드에서 시작할 때 경고 메시지가 나타납니다. 이것은 또한ls
색상 을 가능하게 합니다. 그것 없이는을 사용해야합니다--color=always
.를 참조하십시오man ls
. -
대화식 플래그를 설정하지 않고 별명을 사용 가능하게하는 또 다른 방법이 있습니다
shopt -s expand_aliases
. 그래서 당신은 시도 할 수 있습니다 :ssh localhost 'bash -c "shopt -s expand_aliases; l."'
하나: