我正在尝试使用此命令:
for i in $(cat file); do echo "$whatever_text.$i">$i; done
这是为了使每一行成为一个新文件,我将在这里直截了当地!
我希望bash忽略诸如“ $”之类的表达式,因为例如,如果我有这样的一行:
$a = 'string';
或类似的多行代码,它不会那样打印,bash仅留下“字符串”。
答案 0 :(得分:3)
迭代文本文件的行的正确方法是使用read
循环中的while
命令。
while IFS= read -r i; do
echo "$whatever_text.$i" > "$i"
done < file
有关更多详细信息,请参见Bash FAQ 001。