Bashでset
特定のシェルオプションを設定または設定解除するために使用されます。
オプション-o option-name
は、+o option-name
一部のシェルオプションを設定または設定解除するために使用されます。
-o
または、of以外の+o
オプションをset
使用して特定のシェルオプションを設定または設定解除することもできます。
set -o
他のオプションで設定/設定解除されたシェルのプロパティ/オプションの違いは何ですかset
?
set -o
および他のオプションを使用set +o
して設定または設定解除したシェルオプションと比較して、設定または設定解除したシェルオプションの特別な点は何ですか?set
-o
+o
答え1
たとえば、既存のシングル文字オプションとマルチ文字ニーモニックの間に違いはなく、同じですset -e
。set -o errexit
私はこの2つの型が存在する理由は、シェルに必要なオプションの範囲を表す単一文字フラグが不足しているためだと思います。-o
本質的に無制限のオプションが提供されます(許可されるオプション名の長さによってのみ制限されます)。一貫性と独自の文書化コードで使用するために、既存のフラグにもオプション名が与えられます。対応する文字を指定しないオプション名は、単に新しいものです。