最初の単語ではない場合、エイリアス: `G = '|grep'`の後に `command G grep-string`

最初の単語ではない場合、エイリアス: `G = '|grep'`の後に `command G grep-string`

私はタイピングをたくさん| 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'

おすすめ記事