シェルスクリプトの文字列結果をシェルコマンドセットとして実行します。

シェルスクリプトの文字列結果をシェルコマンドセットとして実行します。

myから文字列の結果を生成し、shell scriptそれをshell command

例えばfile_a:

[email protected]
[email protected]

スクリプト:

awk '{print "mail -s \"welcome\"", $1}' file_a

結果:

mail -s "welcome" [email protected]
mail -s "welcome" [email protected]

それで、結果を一連のシェルコマンドで実行したいと思います。

ベストアンサー1

evalコマンドを見たいです。

eval $(awk '{print "mail -s \"welcome\"", $1}' file_a)

編集する: あなたは正しいです@manatwork --evalは、私が証明したように、いくつかの行では実際には動作しません。私はNavidが尋ねる質問に答えようとしていますが、実際になぜ彼がforループを使用しないのかを尋ねることを恐れてはいけません。つまり:

for m in $(<file_a); do mail -s welcome $m

おすすめ記事