命令之间有什么区别:-
- ls
- \ls
所以如果我写
$ls
or
$\ls
有什么不同?
答案1
反斜杠将强制ls
使用该命令没有任何混叠。
答案2
一般来说,反斜杠会抑制扩展,但令人困惑的是,它会像 C 语言一样对控制字符进行转义。
在问题的第一部分中,sblair 是正确的,反斜杠会抑制别名或别名扩展。
在第二部分中,反斜杠抑制美元扩展:$ls
扩展为 shell 变量的当前值ls
,而$\ls
不扩展。因此,如果ls
不set
扩展任何内容,echo $ls; echo $\ls
则会打印一个空白行($ls 的内容),然后$ls
在下一行打印。