我有很多文件的第一行作爲標識符。隨後的行是標識符的產品。這裏是一個文件的例子:將第一行添加到文件開頭的每一行的shell
0G000001:
Product_2221
Product_2222
Product_2122
...
我想把標識符放在文件的每一行的開始。最終的輸出將是這樣的:
0G000001: Product_2221
0G000001: Product_2222
0G000001: Product:2122
....
我想爲所有的文件,我有一個循環。我一直在嘗試:
for i in $(echo `head -n1 file.$i.txt);
do
cat - file.$i.txt > file_id.$i.txt;
done
但我只複製文件的第一行。我知道sed可以在文件的開頭添加特定文本,但我無法弄清楚它是否指定文本是文件的第一行,並且在循環上下文中。
sed是爲's/old/new /'做的。你沒有做's/old/new /',所以你不應該考慮使用sed。對於其他任何事情,只需使用awk來實現更簡單,更清晰,更高效,更強大,更便攜,更具擴展性的解決方案。 –