저는 bash 별칭을 정말 좋아하지만 새 별칭을 추가할 때마다 두 가지 명령을 입력해야 한다는 점이 짜증스럽습니다.
echo "alias \"short-cmd\"='long-command'" >> ~/.bash_aliases
source ~/.bash_aliases
단일 명령을 사용하여 별칭을 영구적으로 만드는 방법이 있습니까?
답변1
palias
이 함수 (일명 영구 별칭) 에 대한 해결 방법은 다음과 같습니다 .
function palias () {
if [ $# -ne "2" ] ; then
error "Usage: palias short-alias \'long-alias\'"
return
fi
alias $1="$2"
alias $1 >> ~/.bash_aliases
}
답변2
내 "두 개의 키 입력 솔루션"(문자 하나와 리턴 키)은 다음 별칭을 설정하는 것입니다.
alias a='. ~/.bash_aliases'
그런 다음 .bash_aliases 파일을 업데이트할 때마다 다음을 입력합니다.a
return
추가 단계는 github을 사용하여 여러 머신에서 이를 유지하는 것입니다.
bup () { [ $# = 1 ] && { cp -v ~/$1 ~/Dropnot/setups; cd ~/Dropnot/setups; git fetch; git merge origin/master; git add $1; git commit -m"$1 update"; git push origin master; cp -v $1 ~; cd -; } || echo "Error - no filename passed!";}
용법:bup [file] # file must be in ~, is usually a dot file]
답변3
쉘에 로그인하면 ~/.bash_profile 및 ~/.bash_profile 파일에서 참조되는 경우 ~/.bashrc 및 ~/.bash_aliases를 포함하여 여러 파일이 실행됩니다. 로그인할 때마다 별칭을 사용하려면 해당 파일 중 하나에 별칭을 생성하는 명령을 입력하기만 하면 됩니다.
http://shreevatsa.wordpress.com/2008/03/30/zshbash-startup-files-loading-order-bashrc-zshrc-etc/