0

実行可能ファイルに一連のテキスト ファイルをフィードしようとしています。
単純な単語カウントを実行する実行可能ファイルでこれをテストしています。
このタイプのものは、1 つのファイルに対して正常に機能します。

while (cin << word){
  count++;
}

...そしてシェルで...

prog.exe < quickbrownfox.txt

必要に応じて単語数が9になります

素早い茶色のキツネが怠惰な丸太を飛び越える

には 9 つの単語が含まれています。

プログラムに複数のテキスト ファイルを次々に供給するにはどうすればよいですか?

お気に入り:

prog.exe < qbf.txt abc.txt file 3.txt file4.txt...etc
4

3 に答える 3

0

個々のファイルのファイル名や単語数を取得したい場合は、ループを使用する必要があります。例えば:

for file in qbf.txt abc.txt file 3.txt file4.txt
do
    echo "$file `prog.exe < $file`"
done
于 2013-10-04T02:08:59.880 に答える
0

ファイル名をファイルに書き込み、次のコマンドを実行します

cat filename.list
file1
file2
file3
...

cat filenames.list | xargs prog.exe

上記のコマンドは、stdout からパイプされた各引数でプログラムを実行します。リストに複数の行が含まれている場合、 xargs は引数の数の制限を回避します。

于 2013-10-04T12:37:47.213 に答える