私はこれをシェルで直接使用して、スクリプトの結果をテストすることがよくあります。
$ if [ -d mydirectory ] ; then echo YES ; fi
YES
ただし、感嘆符を使用して否定を使用する場合、失敗します(実際には失敗しませんが、キーボード入力を待機している複数行モードになり、Ctrl-Cを使用してエスケープする必要があります):
$ if [ ! -d makehuman ] ; then echo YES ; if
>
> ^C
$ if [ \! -d makehuman ] ; then echo YES ; if
>
> ^C
否定感嘆符をシェルで直接使用するにはどうすればよいですか?
@ jw013のヒントをありがとう、気づかなかった
—
sdaau
$?
-乾杯!
$?
私にPS1
いつもプロンプト最後フォアグラウンドコマンドの終了ステータスを示します。これにより[ -d mydir ]
、現在のプロンプトを実行して確認するのと同じくらい簡単に条件をテストできます。入力を少なくし、プロンプトを使用しないでテストする別の方法は[ -d mydir ] && echo yes
です。