シェルで変数を渡すために出力リダイレクションをbashで実行したい。例えば外部アクションを実行するには変数を渡すが、bashではコマンドパラメータではない
:
OPTION=">> /tmp/log1 2>&1"
ADD_OPTION=($OPTION)
ls ${ADD_OPTION[@]}
私はを/ tmp/LOG1にls
コマンドの結果を記録したいです。 すると、ls >> /tmp/log1 2>&1
が実行されます。
しかし、残念ながら、${ADD_OPTION[@]}
は、ls
のパラメータとして扱われました。 実際の結果:
ls: >>: No such file or directory
ls: /tmp/log1: No such file or directory
ls: 2>&1: No such file or directory
どうすればよいですか?
さらには、bash -c "のls $ {ADD_OPTION [@]}" 目標のために実行することができ何をしたいのか考えられます。しかし、他のニーズの理由から、私はもう一つのアプローチが必要です。 – Dorleeze