1

我正在尝试更改一批文件中特定行的内容。我认为这将是小菜一碟,但由于某种原因,什么都没有发生,所以我想我错过了一些东西。第 8 行应该已被替换。

这是我使用的 csh 脚本:

#!/bin/csh
#
# replace context in line xxx by yyy
# 2010/05/07

set files = `ls FILENAMEPART*`
echo $files
foreach file  ($files)
        sed  '8,8 s/1/2 /' $file 
end

感谢您的建议

4

1 回答 1

2

sed 默认情况下将生成的文件(替换行)打印到标准输出,并且保持源(输入)文件不变。使用 -i 选项进行就地编辑,这意味着直接在 $file 中进行更改。

于 2010-05-07T11:20:43.343 回答