このコードを使用して、同じ名前のフォルダ(list.txtに含まれるフォルダ名)に含まれるファイルから行番号2を読み込みます。
#!/bin/bash
in=/au/cl/tr/129/
inlist=/1/2/3
g=/1/5/file.txt
for i in $(cat $inlist/list.txt); do
echo ${i}
sed '2q;d' ${in}/${i}/${g};
done > newfile.txt
このコードの出力(newfile.txtの内容)は次のとおりです。
folder 1
a
folder 2
b
folder 3
c
.
.
.
.
a、b、cはファイルの2行目の値です。
フォルダ名(list.txtに含まれています)「i」をコード出力に追加して、次のように2行目の値と同じ行のフォルダ名を取得するにはどうすればよいですか?
folder1 (a)
folder2 (b)
folder3 (c)
.
.
.
.
ベストアンサー1
#!/bin/bash
in=/au/cl/tr/129/
inlist=/1/2/3
g=/1/5/file.txt
for i in $(cat $inlist/list.txt); do
echo -n "$i ("
sed '2q;d' ${in}/${i}/${g};
echo ")"
done > newfile.txt
-n スイッチは echo に改行文字を印刷しないよう指示します。引用:http://wiki.bash-hackers.org/commands/buildin/echo