コマンドにファイルからの入力を使用する

コマンドにファイルからの入力を使用する

コマンドでファイルに保存されている MAC アドレスを使用したいと思いますaireplay-ng。このコマンドをファイル内の各 MAC アドレスで 1 回実行したいと思います。

やり方を教えていただけますか?

答え1

xargs -a FILE -d '\n' -L 1 -r COMMAND. のようなものを試して-a、ファイルからコマンドライン引数を 1 行に 1 つの引数として読み取るように-d指示し、入力行ごとにコマンドを 1 回呼び出し、入力がない場合は実行しないように指示することができます。xargs-L1 -r

答え2

純粋な Bash では、while readループを使用する必要があります。

while IFS= read -r mac; do COMMAND "$mac" ; done < /path/to/file

ここで、$macは各行を保持します。 はIFS=先頭と末尾の空白に対する保護手段です。

参照:次のような行は読まないでくださいfor– ファイルからの読み取りを目的としたものではありません。

関連情報