これが私が達成したいものです。
#!/bin/bash
safemode=on
if [ $safemode == 'off' ];then
run dangerous code
fi
私は129本の危険線を持っており、すべて別々です。最良のアプローチは何ですか?
ベストアンサー1
「最良の方法」は、何を最大の努力と見なすかによって大きく異なります。非常に簡単なアプローチは、&&
-connectedコマンドのリストを使用して例を少し変更することです。 Bashの算術テスト構成を使用できます。
#!/bin/bash
safemode=1
(( ! safemode )) && run dangerous code 1
uncritical code
(( ! safemode )) && run dangerous code 2
または一般的な文字列ベースの演算子
#!/bin/bash
safemode=on
[[ $safemode = "off" ]] && run dangerous code 1
uncritical code
[[ $safemode = "off" ]] && run dangerous code 2
これは、すでに実行中の作業の非常に簡単な表記です。それ以外の場合は[[ ... ]]
テストが生成されるため、コマンドリストの実行は 。false
safemode
off
&&
&&
リンクされたコマンドリストの場合、終了コードは最後に実行されたコマンドの終了コードであるため、設定すると「保護された」行の後にsafemode
なります(このようにコードを使用して終了する場合のみ)。 )。$?
1