免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4528 | 回复: 9
打印 上一主题 下一主题

询问echo中反斜杠的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-08 15:24 |只看该作者 |倒序浏览
(1)
echo \a      输出的是a
echo "\a"   输出的是\a

(2)
echo \\a     输出的是\a
echo "\\a"  输出的是\a

请问为什么会这样那?

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
2 [报告]
发表于 2008-12-08 15:32 |只看该作者

回复 #1 wayneicy 的帖子

看shell手册,你就会清楚为什么了。

论坛徽章:
0
3 [报告]
发表于 2008-12-08 15:35 |只看该作者

回复 #2 blackold 的帖子

看哪部分?能给个范围吗?谢谢解答:)

论坛徽章:
0
4 [报告]
发表于 2008-12-08 15:48 |只看该作者
输入命令后 命令行会作一次转义替换
执行echo的时候根据使用的shell不同分为默认转义,和默认不转义
“”是软引用所以对里面的\是没有用的第一次转义仍然会发生
根据你的 输入 你用的 echo是默认不作对\的转义
以上就是原因

论坛徽章:
0
5 [报告]
发表于 2008-12-08 15:54 |只看该作者

回复 #4 justlooks 的帖子

这么对比看那
echo  \a
echo "\a"
我就是想知道这两个为什么输出不同,不在双引号内的反斜杠此时的作用是什么?在双引号内的那?

论坛徽章:
1
丑牛
日期:2014-08-07 17:07:05
6 [报告]
发表于 2008-12-08 16:28 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
7 [报告]
发表于 2008-12-08 16:59 |只看该作者
shell处理结果             echo执行结果
echo \a      =>      echo a             =>            a
echo "\a"   =>       echo \a          =>            \a
echo \\a   =>       echo \a          =>            \a
echo "\\a"  =>      echo \a          =>           \a

论坛徽章:
1
丑牛
日期:2014-08-07 17:07:05
8 [报告]
发表于 2008-12-08 17:00 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
9 [报告]
发表于 2008-12-09 09:09 |只看该作者

回复 #3 wayneicy 的帖子

你要搞清楚输入命令行后,它是如何被处理的。

慢慢来,过段时间就你会明白了。

论坛徽章:
0
10 [报告]
发表于 2008-12-09 09:19 |只看该作者
shell 会依据 IFS(Internal Field Seperator) 将 command line 所输入的文字给拆解为"字段"(word)。
然后再针对特殊字符(meta)先作处理,最后再重组整行 command line 。
soft-quotation mark 屏蔽掉了meta \
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP