シェルスクリプトでファイルをループして読み込む方法
シェルスクリプトでファイルの循環読み込みを実装するには、whileループとreadコマンドを使用できます。以下にサンプルコードを示します。
#!/bin/bash
# 待处理的文件列表
file_list="file1.txt file2.txt file3.txt"
# 循环读取文件
for file in $file_list; do
while IFS= read -r line; do
# 处理每一行
echo "读取到文件 $file 的行: $line"
done < "$file"
done
ファイル一覧は上例の file_list 変数に保存され、必要に応じて処理対象のファイル一覧に差し替え可能です。その後、for ループを使用してファイル一覧内の各ファイルに対して処理が行われ、while ループと read コマンドでファイルの内容一行ずつ読み込まれます。
whileループ内でIFS=を使用するとreadコマンドで行を複数のフィールドに分割できなくなり、-rオプションはreadコマンドがバックスラッシュのエスケープをしないようにします。
各反復で読み込まれた行は、その場でループ本体で処理できます。上の例では読込行を単に表示するのみですが、用途に合わせて処理を変えてみてください。
注意:スクリプトを使用する前に、処理するファイル一覧に記載されたファイルが存在し、適切な読み込み権限があることを確認してください。