2つの列を持つファイルを繰り返し、両方の列を読み取ります。

2つの列を持つファイルを繰り返し、両方の列を読み取ります。

分析する必要があるすべてのファイル名を含むtxtファイルがあります。このファイル(inputFile.txt)があります。

/path/file1a  path/file1b 
/path/file2a  path/file2b

実行するには、2つの入力ファイルが必要なコードがあります。

./Analyzethis /path/file1a /path/file1b

私はtxtファイルを通過して各行を読み、私のコードを実行するbashループを作成しようとしています。

私は持っています

#!/bin/bash
IFS=$'\n'; for FILE1 in `cat inputFile.txt`; do ./Analyzethis $FILE1; done

しかし、動作しません。 Bashループを使用して各行と列をどのように繰り返すのですか?

ベストアンサー1

bash FAQは次のとおりです。ファイル(データストリーム、変数)を1行ずつ(および/またはフィールドごとに)読み取る方法は?

while read -r first second; do 
    ./Analyzethis "$first" "$second"
done < inputFile.txt

変数を引用してください。

よくある質問ページを読むときは、必ずお読みください。「for」を使用しないでください。

おすすめ記事