私は-x
bashスクリプトの実行を追跡するために使用します。
#!/bin/bash -x
x=1
y=2
実行中に出力に送信される
+ x=1
+ y=2
Q:スクリプトの途中でトレースモードを停止/一時停止してから再度有効にする方法は? ti は y=2 >/dev/null のようなものとは何の関係もありません。
詳細モード()を使用できますか#!/bin/bash -v
?
答え1
これset
組み込みこれらのオプションを制御してください。
開いているxtrace
:
set -x
オフにするには:
set +x
プラスとマイナスの逆論理に少し似ていますが、それはすべてです。
同様に、サポートされている他のすべてのオプションもset
コマンドライン(*)で設定できるため、等とbash -u
同じですset -u
。リンクの説明にリストがあり、help set
コマンドラインにも表示されます。
set -o xtrace
一部のオプションには、などの長い形式もありますset -x
。
(*しかし、その逆と言うことはできません。すべてのコマンドラインオプションをset
次のように設定できるわけではありません。-l
例えば、それに対応するオプションはなく、当然-c
。