我的键盘只有正常的引号,而不是聪明的引号.
我已经反过来说我需要在cgi开发中使用正常的,在AWK/SED中需要后向的.
我应该使用智能报价,普通报价和落后报价吗?
显然,我需要编辑我的键盘布局以获得智能引号.
如果你的意思`
是智能引号,那么它实际上被称为"反引号".聪明的引号是当你输入'和'时,但是根据上下文自动获得'和'或"和".我不确定你如何在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
其他脚本语言,例如Perl和Ruby,也有类似的规则,尽管可能存在细微差别.
聪明的报价是美丽的排版.它们与编程无关.
编辑:你的报价就需要.
双引号:""它们用于许多语言的文字字符串
单引号:''用于某些语言中的文字字符,如C和javascript和php等语言中的字符串.(例如,如果你需要打印字符串"foo",你可以使用'"foo"'
)
返回引号:在UNIX shell中,表示将一个命令的标准输出替换为定义另一个命令的文本行.例如echo
``date \
可能会执行echo Sat Mar 1 09:43:00 GMT 2008并打印Sat Mar 1 09:43:00 GMT 2008.
在shell/awk/perl编程中以及在TeX中执行文档时,反引用会被大量使用.除此之外,你可能不会使用它们.