yae*_*ael -4 linux sed text-processing
我们的文件中有很多“%”字符
我们想在每个“%”之前添加反斜杠
作为
\%
Run Code Online (Sandbox Code Playgroud)
例子
前
%TY %Tb %Td %TH:%TM %P
Run Code Online (Sandbox Code Playgroud)
后
\%TY \%Tb \%Td \%TH:\%TM \%P
Run Code Online (Sandbox Code Playgroud)
如何用 sed 做到这一点?
很简单
$ echo '%TY %Tb %Td %TH:%TM %P' | sed 's/%/\\%/g'
\%TY \%Tb \%Td \%TH:\%TM \%P
Run Code Online (Sandbox Code Playgroud)
但是您可以使用 bash 参数替换来完成相同的操作
$ str='%TY %Tb %Td %TH:%TM %P'; backslashed=${str//%/\\%}; echo "$backslashed"
\%TY \%Tb \%Td \%TH:\%TM \%P
Run Code Online (Sandbox Code Playgroud)