分页: 1 / 1

sed输出的问题

发表于 : 2006-05-16 18:41
shujun579
好像sed不能把输出重定向到原文件
例如 sed "/$a/d" /foo/bar > bar
然后bar就变成空文档了
只有sed "/$a/d" /foo/bar > bar_new 才有效
谁能告诉我怎么把修改保存到原文件吗 ?

谢谢 !

发表于 : 2006-05-16 18:43
leal
>> 行不行?

发表于 : 2006-05-16 18:53
shujun579
>>是追加到文件尾

比如源文件1.txt是:
123
456
789

用命令 sed '/123/d' 1.txt >> 1.txt
文件内容就变成了:
123
456
789
456
789
这不是我的本意,我的本意应该是删除123这行

发表于 : 2006-05-16 19:19
eexpress
是这样的。没办法。手动改文件名吧。

发表于 : 2006-05-16 19:24
leal
sed "/123/d" sed.txt > test; mv test sed.txt

嘻嘻

发表于 : 2006-05-16 20:14
shujun579
呵呵 我总以为有办法的
其实这样已经挺好的了

发表于 : 2006-05-25 14:48
windforest
OPTION : --in-place

发表于 : 2006-05-25 18:33
shujun579
非常感谢 !哈哈