Windows 7 sed:我们认可的选项——i
我用的是7号窗口Windows 7 sed:我们认可的选项——i,windows-7,sed,Windows 7,Sed,我用的是7号窗口 sed-V 给我 GNU-sed版本3.02 我有一个文本文件,其中包含: foo-bar 如果我在命令行中写入: sed s/foo/tofu/test.txt 我被打印在标准字体上 豆腐条 但是,我想在位编辑此文件,因此使用-I选项: sed-i s/foo/tofu/test.txt 给我sed:无效选项--i 我缺少什么?虽然我不能保证这会起作用,因为我没有在Windows 7上运行它,但您是否考虑过使用重定向然后交换? 意思是这样的: sed s/foo/tofu/t
sed-V
给我
GNU-sed版本3.02
我有一个文本文件,其中包含:
foo-bar
如果我在命令行中写入:
sed s/foo/tofu/test.txt
我被打印在标准字体上
豆腐条
但是,我想在位编辑此文件,因此使用-I
选项:
sed-i s/foo/tofu/test.txt
给我sed:无效选项--i
我缺少什么?虽然我不能保证这会起作用,因为我没有在Windows 7上运行它,但您是否考虑过使用重定向然后交换? 意思是这样的:
sed s/foo/tofu/test.txt>tmp.txt&&mv tmp.txt test.txt
虽然这是一种非常肮脏的做事方式,但我认为它可能会奏效。您也可以尝试这样做
sed s/foo/tofu/test.txt>test.txt
但我觉得这可能会导致一些错误,因为您在同一个文件上读写。这是sed版本。请尝试在此处找到的一个:
由于很少有Windows 7用户使用sed,我不确定您会得到多少帮助。它在linux上运行良好。@ooga谢谢。现在这个解决方案对我来说很有效:也许你应该下载一个更高的版本。我从2009年开始使用GNU sed 4.2.1。它反对
sed-V
,并希望sed--version
。您的sed-i
行为我使用了该版本。sed s///test>test
无法工作:shell将首先处理重定向,文件将被截断为0字节。然后,当sed启动时,它将从一个空文件中读取。