私ニックネームtcsh。ポート(FreeBSDポート)でプログラムを見つけたいです。
これまでにエイリアスを作成しましたが、うまくいきますが、検索することしかできない*port_name
ことを願っています*port_name*
。私の例がうまくいかない理由を教えてください。
alias najdi 'echo /usr/ports/*/*\!:1* | sed -e "y/ /\n/"'
。
najdi port_name
finds: *port_name
expected: *port_name*
解決策: 私はこれに切り替えました:(大文字と小文字も区別します)
alias portfind 'cd /usr/ports && make quicksearch name=\!:1 | grep Path'
答え1
tcshでは、拡張は!:1*
次のようになります。!:1-$
必要なものを達成するには、次のことを行う必要があります。
alias najdi 'echo /usr/ports/*/*\!:1-1* | sed -e "y/ /\n/"'
個人的には、find
シェル拡張の代わりに以下を使用することを好みます。
alias najdi 'find /usr/ports -type d -maxdepth 2 -name \*\!:1-1\* -print'