比方说,你有一个alias像这样的 Bash:
alias
alias rxvt='urxvt'
效果很好。
然而:
alias rxvt='urxvt -fg '#111111' -bg '#111111''
不会工作,也不会:
alias rxvt='urxvt -fg \'#111111\' -bg \'#111111\''
那么,一旦你转义了引号,你如何最终匹配字符串中的开始和结束引号?
alias rxvt='urxvt -fg'\''#111111'\'' -bg '\''#111111'\''
看起来很笨拙,尽管如果允许您像这样连接它们,它将代表相同的字符串。
如果您真的想在最外层使用单引号,请记住您可以粘贴两种引号。例子:
alias rxvt='urxvt -fg '"'"'#111111'"'"' -bg '"'"'#111111'"'" # ^^^^^ ^^^^^ ^^^^^ ^^^^ # 12345 12345 12345 1234
解释如何'"'"'解释为':
'"'"'
'
"
如果您没有在 (1) 和 (2) 之间或 (4) 和 (5) 之间放置任何空格,shell 会将该字符串解释为一个长单词。