0
我试图用sed修复一个文件,并且我在修理我做错的时候遇到了问题。关于为什么sed的任何指针都不像我期望的那样表现出色。替换SED,试图追加内容不起作用
我的文件包含一堆行,每行都包含一个值。值的内容与替换无关,除了它们始终是字母数字并遵循一种模式。我想预先添加这些值并附加其他数据,以创建一个CSV文件。
前面加上当,SED的作品令人钦佩:
预定(作品)
sed 's/\(.*\)/NULL;0;400;6;2010-07-27;\1/' selection.csv
,导致:
NULL;0;400;6;2010-07-27;1326GP11SCH
NULL;0;400;6;2010-07-27;2312BB30DUM
这也正是我希望的那样。
追加(失败)
然而,追加时,事情就变得丑陋:
sed 's/\(.*\)/\1 ;NULL;NULL;1/' selection.csv
结果造成:
;NULL;NULL;1
2312BB30DUM ;NULL;NULL;1
的以待替换值消失除了最后一行之外,这是非常令人沮丧的。
这一定很明显,我在这里做错了,但无法弄清楚。
(注:不知道这是否是SO或SU材料......随意将其移动到超级用户,如果可以的话,相信它应该是那边)
你先生,太棒了。非常感谢!答案已被接受并被提升。 – kander 2010-07-27 15:28:40