1. 首页
  2. 技术文档
  3. Shell

Shell中echo使用单引号时输出单引号

echo 'USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`' >> /test

背景:echo一条命令到指定文件中,但是这条命令中带有awk命令,awk后面跟的是'{print $NF}'都带有单引号,输入至文本中会失败,换为双引号后会成功,但是查看结果会发现 USER_IP=xxx.xxx.xxx.xxx 这是把这条语句的结果直接输出出来了!

经过万能的百度搜索后结果为把单引号换为 ‘”‘”‘ ,完整命令如下

echo 'USER_IP=`who -u am i 2>/dev/null | awk '"'"'{print $NF}'"'"' |sed -e '"'"'s/[()]//g'"'"'`' >> /test

结果正常!

原创文章,作者:admin,如若转载,请注明出处:https://linux6.cn/skill/shell/shellzhongechoshiyongdanyinhaoshishuchudanyinhao.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

在线咨询:点击这里给我发消息

邮件:admin@linux6.cn

工作时间:7X24