반응형
bash에 변수가 있는 별칭
에일리어스를 만듭니다.bash
다음과 같습니다.
alias tail_ls="ls -l $1 | tail"
따라서 누군가가 다음을 입력할 경우:
tail_ls /etc/
디렉토리의 마지막 10개의 파일만 표시됩니다.
그렇지만$1
나한테는 효과가 없는 것 같아요.bash에서 변수를 도입할 수 있는 방법이 있나요?
에일리어스가 아닌 함수를 생성하여 다음과 같이 내보냅니다.
function tail_ls { ls -l "$1" | tail; }
export -f tail_ls
메모-f
로 바꾸다.export
: 함수를 내보내고 있음을 나타냅니다.이것을 당신의 것에 넣으세요..bashrc
이제 가도 돼
alias tail_ls='_tail_ls() { ls -l "$1" | tail ;}; _tail_ls'
@maxim-sloyko의 솔루션은 동작하지 않았지만, 다음과 같은 경우:
~/.bashrc에서 추가:
sendpic () { scp "$@" mina@foo.bar.ca:/www/misc/Pictures/; }
파일을 저장하고 다시 로드합니다.
$ source ~/.bashrc
실행:
$ sendpic filename.jpg
원본 출처: http://www.linuxhowtos.org/Tips%20and%20Tricks/command_aliases.htm
정의할 수 있습니다.$1
와 함께set
에일리어스를 의도대로 사용합니다.
$ alias tail_ls='ls -l "$1" | tail'
$ set mydir
$ tail_ls
tail_ls() { ls -l "$1" | tail; }
bash 대신 Fish 쉘(http://fishshell.com )을 사용하는 경우 함수는 약간 다르게 기술됩니다.
이런 걸 더하고 싶을 거예요~/.config/fish/config.fish
이것은 당신의 것과 동등합니다.~/.bashrc
function tail_ls
ls -l $1 | tail
end
언급URL : https://stackoverflow.com/questions/4438147/alias-with-variable-in-bash
반응형
'programing' 카테고리의 다른 글
Python : dict(존재하는 경우) 목록. 새로운 dict를 추가하지 않으면 dict 값을 증가시킵니다. (0) | 2023.04.18 |
---|---|
정적 클래스 속성에 바인딩하고 있습니다. (0) | 2023.04.18 |
bash에 파일이 있는지 테스트하기 위해 루프하는 동안 (0) | 2023.04.18 |
PowerShell에서 %(%)는 무엇을 합니까? (0) | 2023.04.18 |
Visual Studio에서 다음 오류 바로 가기로 이동하시겠습니까? (0) | 2023.04.18 |