나는 타이핑을 | grep
많이 하고 | less
있는데 비슷한 일을 할 수 있는 방법이 있는지 궁금합니다.
alias G='| grep -E' # egrep is deprecated
alias L='| less'
그래서 나는 다음과 같이 할 수 있습니다 :
$ command G grepstring
또는
$ verbose-command L
현재 에서 전환 중이므로 bash
가능 zsh
하다면 두 셸 모두에서 문제를 해결해 주세요.
답변1
bash
bash
왜냐면 이걸 어떻게 해야할지 모르겠어설명서에 따르면:
별칭을 사용하면 단어로 사용될 때 단어 대신 문자열을 사용할 수 있습니다.첫 번째간단한 명령.
zsh
help alias
설명하다:
이
-g
플래그가 있으면 전역 별칭이 정의됩니다. 전역 별칭은 명령 위치에 나타나지 않더라도 확장됩니다.
따라서 less
예에서는 다음과 같습니다.
alias -g L="| less"
예
zsh-lovers gives the following examples:
alias -g ...='../..'
alias -g ....='../../..'
alias -g .....='../../../..'
alias -g CA="2>&1 | cat -A"
alias -g C='| wc -l'
alias -g D="DISPLAY=:0.0"
alias -g DN=/dev/null
alias -g ED="export DISPLAY=:0.0"
alias -g EG='|& egrep'
alias -g EH='|& head'
alias -g EL='|& less'
alias -g ELS='|& less -S'
alias -g ETL='|& tail -20'
alias -g ET='|& tail'
alias -g F=' | fmt -'
alias -g G='| egrep'
alias -g H='| head'
alias -g HL='|& head -20'
alias -g Sk="*~(*.bz2|*.gz|*.tgz|*.zip|*.z)"
alias -g LL="2>&1 | less"
alias -g L="| less"
alias -g LS='| less -S'
alias -g MM='| most'
alias -g M='| more'
alias -g NE="2> /dev/null"
alias -g NS='| sort -n'
alias -g NUL="> /dev/null 2>&1"
alias -g PIPE='|'
alias -g R=' > /c/aaa/tee.txt '
alias -g RNS='| sort -nr'
alias -g S='| sort'
alias -g TL='| tail -20'
alias -g T='| tail'
alias -g US='| sort -u'
alias -g VM=/var/log/messages
alias -g X0G='| xargs -0 egrep'
alias -g X0='| xargs -0'
alias -g XG='| xargs egrep'
alias -g X='| xargs'
답변2
Bourne Shell은 명령줄에 이름이 표시될 때마다 확장되는 별칭을 지원합니다.
alias -a name=value
이와 같은 별칭을 설정하십시오. 이 개념은 1980년 최초의 UNIX 클론인 UNOS에 대한 아이디어로 거슬러 올라갑니다. name
확장되는 것이 마음에 들지 않으면 탈출해야 하므로 주의해서 사용하세요 .
바라보다:http://schilytools.sourceforge.net/man/man1/bosh.1.html
1980 UNOS 인터페이스와 유사한 인터페이스는 현재 6페이지에 있고 별칭 섹션은 7페이지에 있으며 별칭 명령은 36페이지에 설명되어 있습니다.
Bourne Shell은 UNOS에서 영구 별칭 개념도 구현합니다.
Bourne Shell의 별칭은 다른 Shell의 별칭보다 더 강력하므로 이 기능을 이해하려면 시간을 투자하여 이 기능을 이해하는 것이 좋습니다.