谁能向我简要解释一下句法这个命令的?我知道该命令的输出,但想了解它是如何工作的。
我希望得到关于该命令的实际编写方式以及该命令中使用的每个字符的含义的解释。
sed -i 's|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g' drcCustimize2
答案1
sed
:调用sed
命令-i
:传递sed
-i选项:就地修改文件's|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g'
: '...'$1'..' 用于使整个部分成为命令的一个sed
参数s|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g
:s|pattern|replacement|options
:s
是替换(或搜索和替换)命令,这些|
字符用于将该命令的各个部分相互分隔\(LAYOUT PATH \)
:搜索文字字符串“LAYOUT PATH”,并将其捕获到一个组中;该组的内容可以使用以下命令放入替换字符串中\1
.*
:匹配所有内容直到行尾\1
:将匹配的组1放入替换文本中"../GDS/
:将文字字符串放入"../GDS/
替换文本中$1
:将 shell 脚本的第一个参数放入替换文本中.gds"
:将文字字符串放入.gds"
替换中g
:对一行中的每一个匹配项进行替换;如果没有g
,则仅替换第一个匹配项drcCustimize2
sed
:应该更改的 文件