1''*_*1'' 7 shell special-characters
` 字符的名称是什么,它在 SE 代码格式之外的意义是什么,因为我无法让它工作?我熟悉它在用于格式化代码块的 Stack Exchange 论坛中的使用,所以请在此之外。
les*_*les 19
` 被称为很多东西,包括反引号、反引号、倒逗号、准引号和重音符。
重要的是要注意引号、抽动等会影响 shell 处理变量的方式。如果使用不当,您的结果可能会有所不同,或者您可能只会出错。
在形成完整的表达式时,您应该将它们括在 `` 中,如下所示:
val=`expr 3 + 4`
Run Code Online (Sandbox Code Playgroud)
下面包括对各种不同应用程序的更详细描述。
重音符号 (`) 是许多书面语言中使用的变音符号。
程序员在许多任务中使用重音符作为一个单独的字符(即,不与任何字母组合)。在这个角色中,它被称为反引号或反引号。
当使用 TeX 排版文本时,反引号字符用作表示卷曲开引号的语法。例如,` 呈现为单开卷曲引号 ('),而 `` 呈现为双开卷曲引号 (")。
它还用于在需要数字的地方提供 ASCII 字符的数字 ASCII 值。
许多 Unix shell 和编程语言 Perl、PHP 和 Ruby 使用此字符对来指示命令替换,即将标准输出从一个命令替换为定义另一命令的一行文本。例如,代码行:
echo It is now `date`
Run Code Online (Sandbox Code Playgroud)
在命令替换后,可能会在命令中产生:
echo It is now Sun Apr 6 05:37:06 GMT 2014
Run Code Online (Sandbox Code Playgroud)
然后在执行时产生输出:
It is now Sun Apr 6 05:37:06 GMT 2014
Run Code Online (Sandbox Code Playgroud)
它有时用于源代码注释中以指示代码,例如
Use the `printf()` function.
Run Code Online (Sandbox Code Playgroud)
这也是 Markdown 格式化程序用来指示代码的格式。
尽管您在 Stack Exchange 之外提到了,但我认为对于那些不知道 Stack Exchange 在其每个论坛中的问题、答案和评论中指示代码的人来说,这一点很重要。
在 Bash shell 中,样式指南不推荐使用 `...` 语法(尽管它没有被正式弃用),并且首选替代语法 $(...) 因为它更具可读性,尤其是对于嵌套表达式。Z壳也是如此。
在 BBC BASIC 中,反引号字符在变量、结构、过程或函数名称的开头或内部有效。
在 D 和 Go 中,反引号用于包围原始字符串文字。
在 Haskell 中,用反引号将函数名括起来允许它用作中缀运算符。
在 Lisp 宏系统中,反引号字符(在 Scheme 中称为 quasiquote)引入了一个引号表达式,其中可能发生逗号替换。它与普通引号相同,只是以逗号为前缀的符号将被这些符号的值替换为变量。这大致类似于在双引号内使用 $ 的 Unix shell 变量插值。
在 m4 中,它与撇号一起使用以引用字符串(以抑制或推迟宏扩展)。
在 MySQL 中,它在查询中用作列、表和数据库分类器。
在 OCaml 中,反引号用于表示多态变体。
在 Pico 中,反引号用于表示编程语言中的注释。
在 Python 3.0 之前,反引号被用作 repr() 函数的同义词,它将其参数转换为适合程序员查看的字符串。然而,这个特性在 Python 3.0 中被删除了。
反引号也广泛用于 reStructuredText 纯文本标记语言(在 Python docutils 包中实现)。
Windows PowerShell 使用反引号作为转义字符。例如,换行符表示为`n。大多数常用的编程语言使用反斜杠作为转义字符(例如 \n),但由于 Windows 允许反斜杠作为路径分隔符,因此 PowerShell 将反斜杠用于不同的目的是不切实际的。为了获得 ` 字符本身,使用了两个反引号。
例如,.NET 的可为空的布尔值在 PowerShell 中指定为:
[Nullable``1[System.Boolean]]
Run Code Online (Sandbox Code Playgroud)
在 Tom 中,反引号用于创建新术语或调用现有术语。
在 Scala 中,标识符也可以由反引号之间的任意字符串构成。然后标识符由除反引号本身之外的所有字符组成。
在 Unlambda 中,反引号字符表示函数应用。
http://en.wikipedia.org/wiki/Grave_accent