シェルスクリプトでファイルを読み込んで処理する

シェルスクリプトでファイルを1行ずつ読み込む

シェルスクリプトでファイルの内容を読み込んで、その内容を出力したりする方法を紹介します

ファイルを標準入力へリダイレクトさせて読み込む

 while read lineで、標準入力リダイレクトでファイルを読込みながら 1行ずつ処理する方法です

読み込むファイル(list.txt)内容は以下のような中身です

while read lineでファイルを読み込んでその内容を出力します。
下記の done < 「ファイル名」で読み込むファイルを指定しています

ファイルの中身をcat で出力して、パイプで渡す

cat でファイルの内容を出力して、その結果をパイプでつないで「while read line」に渡して、1行ごとにその内容を出力します。
cat 「ファイル名」 | while read line の箇所で読み込むファイル名を指定しています

カンマ区切りのCSV等を読み込んで変数して出力する

csvファイル等でカンマ区切りの文字を、変数として1行ずつ読み込んで、その内容を出力する方法です

読み込むをおこなうCSVをファイルの中身は以下のような感じです

CSVファイルを読み込んで、「cut」コマンドで「,」区切りで変数を取り出して、その内容を出力しています。cutコマンドは以下のような感じの書式となります。今回はカンマ区切りですが、空白なども取り扱うことができます

書式:cut -d ‘[区切り文字]’ -f [取り出す項目数]

 

スポンサーリンク