我的键盘只有正常的引号,而不是聪明的引号.
我已经反过来说我需要在cgi开发中使用正常的,在AWK/SED中需要后向的.
我应该使用智能报价,普通报价和落后报价吗?
显然,我需要编辑我的键盘布局以获得智能引号.
Bri*_*ell 16
如果你的意思`是智能引号,那么它实际上被称为"反引号".聪明的引号是当你输入'和'时,但是根据上下文自动获得'和'或"和".我不确定你如何在awk或sed中使用智能引号.
在shell中,反引号(例如)`command`用于评估命令并将命令的结果替换为正在评估的shell表达式; 它可用于计算和参数到另一个命令,或设置变量.为了减少歧义,您可以使用$(command),这使得许多引用规则更容易解决.
在外壳,'并且"也不同."用于您想要变量替换和转义序列的字符串.'表示仅包含引号内字符的字符串,不包含可变插值或转义序列.
所以,例如:
$ name=world
$ echo "Hello, $name"
Hello, world
$ echo 'Hello, $name'
Hello, $name
$ echo "Testing \\ escapes"
Testing \ escapes
$ echo 'Testing \\ escapes'
Testing \\ escapes
$ echo `ls`
example-file another-example
$ echo 'ls'
ls
$ echo "ls"
ls
Run Code Online (Sandbox Code Playgroud)
其他脚本语言,例如Perl和Ruby,也有类似的规则,尽管可能存在细微差别.
聪明的报价是美丽的排版.它们与编程无关.
编辑:你的报价就需要.
'"foo"')echo``date \可能会执行echo Sat Mar 1 09:43:00 GMT 2008并打印Sat Mar 1 09:43:00 GMT 2008.