sed替换功能变量接收正则符分隔符使用指南
sed替换功能变量接收正则符分隔符使用指南
-
若使用sed替换过程中需要接收变量则需要在变量外加上单引号('$n');
场景一:把aa替换成接收变量$name
sed -i 's/aa/'$name'/g' ./xxx.file
-
若使用sed替换过程中有涉及到正则字符或分隔符比如路径“/”(正斜杠)或“&”符号需要在前面加“\”(反斜杠)进行转义;
场景二:把aa替换成接收变量加其它信息$name_one/asc&user
sed -i 's/aa/'$name'_one\/asc\&user/g' ./xxx.file
-
若使用sed替换过程中接收的变量值内部涉及正则符或分隔符可以将sed命令当中的分隔符替换成“|”或“@”等非正则符;
场景三:把aa这一行信息(.*$正则匹配aa及后面所有字符)替换成接收变量加其它信息$name_one/asc&user
sed -i 's|aa.*$|'$name'_one/asc\&user|g' ./xxx.file sed -i 's@aa.*$@'$name'_one/asc\&user@g' ./xxx.file