.bashrc의 별칭은 인수를 허용하지 않는 것 같습니다.

.bashrc의 별칭은 인수를 허용하지 않는 것 같습니다.

중복 가능성:
Bash에서 언제 별칭을 사용하고, 언제 스크립트를 사용하고, 언제 함수를 작성합니까?

.bashrc 파일에 별칭을 설정하려고 하는데 예상대로 작동하지 않습니다.

다음과 같은 유효한 별칭이 있습니다.

alias lolcat='python /home/martyn/Dropbox/Applications/Scripts/logcat-viewer/unixcoloredlogcat.py'

나는 보통 이 명령을 다음과 같이 사용합니다.

adb logcat SomeValue:* *:e | lolcat

하지만 다음과 같이 작성할 수 있도록 별칭에 넣고 싶습니다.

logcat SomeValue

하지만 아래 별칭이 작동하지 않습니다. $1이(가) 연결되지 않는 것 같습니다. 이 문제를 해결하도록 도와줄 수 있는 사람이 있나요?

alias logcat="adb lolcat $1:* *:E | lolcat"

**고정**

alias lolcat='python /home/martyn/Dropbox/Applications/Scripts/logcat-viewer/unixcoloredlogcat.py'

function logcat(){ 
    adb lolcat $1:* *:E | lolcat 
}

답변1

csh에서처럼 대체 텍스트에 매개변수를 사용하는 메커니즘이 없습니다. 매개변수가 필요한 경우 쉘 함수를 사용해야 합니다. 바라보다Bash 참조 매뉴얼::6.6 별칭

관련 정보