変な見た目のメッセージを出力するために、.bashrc に次のものがあります。
fortune | cowsay -W 65
fortune
コンピューターにインストールされていないか、インストールされていない場合は、この行を実行したくありませんcowsay
。
このチェックを実行する最良または最も簡単な方法は何ですか?
変な見た目のメッセージを出力するために、.bashrc に次のものがあります。
fortune | cowsay -W 65
fortune
コンピューターにインストールされていないか、インストールされていない場合は、この行を実行したくありませんcowsay
。
このチェックを実行する最良または最も簡単な方法は何ですか?
type
またはwhich
またはを使用hash
して、コマンドが存在するかどうかをテストできます。
それらのすべてから、which
実行可能ファイルでのみ機能します。スキップします。
の行で何かを試してください
if type fortune &> /dev/null; then
if type cowsay &> /dev/null; then
fortune | cowsay -W 65
fi
fi
または、if
s なし:
type fortune &> /dev/null && type cowsay &> /dev/null && (fortune | cowsay -W 65)
type
そのためのツールです。これは Bash ビルトインです。私がかつて思っていたように、それは時代遅れではありませんtypeset
。1つのコマンドで両方を確認できます
if type fortune cowsay
then
fortune | cowsay -W 65
fi
また、出力を STDOUT と STDERR に分割するため、成功メッセージを抑制することができます
type fortune cowsay >/dev/null
# or failure messages
type fortune cowsay 2>/dev/null
# or both
type fortune cowsay &>/dev/null
インストールされていない場合にエラーメッセージが表示されないようにする場合は、次のようにします。
(fortune | cowsay -W 65) 2>/dev/null