如何使用sed将重复引号转换为单个引号并处理tmp.cmd文件的引号清理需求
去除tmp.cmd中重复的
"字符 你已经完成了第一步——用sed -r 's/^"|"$//g' tmp.cmd > tmp1.cmd去掉了文件首尾的引号,接下来只需要处理剩余的重复"",把它们替换成单个的"就能达到预期格式。
方法一:一步完成所有处理
如果不想分两次处理文件,可以把两个sed操作合并成一个命令,直接从原文件生成最终结果:
sed -r 's/^"|"$//g; s/""/"/g' tmp.cmd > tmp_final.cmd
这个命令的作用是:
s/^"|"$//g:移除行首和行尾的"s/""/"/g:将所有出现的""替换为单个"
方法二:处理已生成的tmp1.cmd
如果你已经得到了去除首尾引号后的tmp1.cmd,直接对它执行替换命令即可:
sed -r 's/""/"/g' tmp1.cmd > tmp_final.cmd
执行完后,你的文件内容就会从:
grep -rFIil ""APE.ACTVY_LOG""| xargs grep -iF ""ACTVY_ENT_TSTMP""
变成你期望的:
grep -rFIil "APE.ACTVY_LOG"| xargs grep -iF "ACTVY_ENT_TSTMP"
内容的提问来源于stack exchange,提问作者Dayton Rumbold
相关产品推荐
相关产品推荐

