sed:无法识别的选项 - i

时间:2014-07-03 03:30:45

标签: windows-7 sed

我正在使用Window 7。

sed -V

给了我

GNU sed version 3.02

我有一个文本文件:

foo bar

在命令行中,如果我写:

sed s/foo/tofu/ test.txt

我在stdout打印;

tofu bar

但是,我想在此处编辑此文件,因此请使用-i选项:

sed -i s/foo/tofu/ test.txt

给了我sed: invalid option -- i

我错过了什么?

2 个答案:

答案 0 :(得分:1)

虽然我不能保证这会起作用,因为我没有在Windows 7上运行它,但您是否考虑过使用重定向然后交换? 含义如下:
sed s/foo/tofu/ test.txt > tmp.txt && mv tmp.txt test.txt
虽然这是一种非常肮脏的做事方式,但我认为它可能有效。你也可以尝试做 sed s/foo/tofu/ test.txt > test.txt
但我觉得这可能会导致一些错误,因为你在同一个文件上阅读和写作。

答案 1 :(得分:0)

这是sed版本。试试这里找到的一个: http://unxutils.sourceforge.net/UnxUpdates.zip