我想将set_input中的clk替换为clk_new。
在终端上它工作正常:
grep set_input abc.tcl | grep -w clk | sed 's/clk/clk_new/g'
但是一旦我使用inplace,保存更改文件就会在file.i.e
中更改grep set_input abc.tcl | grep -w clk | sed -i 's/clk/clk_new/g' abc.tcl
set_input -clock clk_new -delay 0.2
set_input -clock clk_new -delay 0.5
set_output -clock clk_new -delay 0.2
答案 0 :(得分:1)
任何时候你发现自己在追逐greps + seds你都有错误的做法。在这种情况下,你所需要的只是GNU sed(由于RequireQualifiedAccess
而你已经在使用{}}用于字边界:
-i
答案 1 :(得分:0)
-i选项指定要就地编辑文件用于文件上的替换语句。
您不需要grep语句。
试试这段代码:
$ sed -i 's/clk/clk_new/g' abc.tcl