我试过用这个;
sed -e 's/ /Close,/g' /home/user/Desktop/original.txt > /home/user/Desktop/updated.txt
,文件如下:
SYMBOL
16.00 Low,15.85
16.91
我想要达到的目的是在16.00前面的第2行插入一个单词。
我一直在努力想让它插入我的大脑,我的尝试都不是很平坦,任何帮助都会受到赞赏。
答案 0 :(得分:1)
这取决于您要匹配的“特定行”。如果是那条确切的行:
sed -r 's/^\s*16.00/Close,16.00/' /home/user/Desktop/original.txt > /home/user/Desktop/updated.txt
如果它更通用一些,可能:
sed -r 's/^\s*(\d\d\.\d\d\s+Low)/Close,\1/' /home/user/Desktop/original.txt > /home/user/Desktop/updated.txt
答案 1 :(得分:0)
sed 's/^[[:space:]]\{1,\}16/Close,16/' /home/user/Desktop/original.txt > /home/user/Desktop/updated.txt
g
正在改变当前工作内容的几种情况,但默认情况下,sed一次处理1行。在这种情况下,g
是无用的,因为每行只有一个最大变化。此外,^
是每一行的开头,而不仅仅是所有行中的第一行。