Shell 多种引号的区别(““、‘‘、``、$())

简介: Shell 多种引号的区别(““、‘‘、``、$())
  • 区分三种定界符
  • "":双引号,允许扩展,以 $ 引用其他变量。
  • '':单引号,禁用扩展,即便 $ 也视为普通字符。
  • ``:反引号,将命令的执行输出作为变量值,$()与反引号效果基本一致,只能放命令,
  • 但是两者还是有区别的:反引号本身就对 \ 进行了转义,想在反引号中起到 \ 的特殊意义,必须使用 2\ 来进行表示(例如:\\ = \),$() 中则不需要考虑 \ 的问题,与平常使用的一样:\ = \
  • 举例
// "" 使用
$ echo "$USER id is $UID"
dzm id is 501
// '' 使用
$ echo '$USER id is $UID'
$USER id is $UID
// `` 使用
$ test=`ls -l`
$ echo $test
total 48
drwxr-xr-x@ 39 dzm  staff   1248 12 29 11:32 GitHub
drwxr-xr-x@  7 dzm  staff    224 11 29 09:46 MaYun
// $() 使用,与 `` 完全等值
$ test=$(ls -l)
$ echo $test
total 48
drwxr-xr-x@ 39 dzm  staff   1248 12 29 11:32 GitHub
drwxr-xr-x@  7 dzm  staff    224 11 29 09:46 MaYun


目录
打赏
0
0
0
0
270
分享
相关文章
使用exec模式与shell模式,执行ENTRYPOINT和CMD的区别
结合 `exec`与 `shell`模式,`ENTRYPOINT`与 `CMD`在Docker容器启动时的交互方式展现出不同的特点。选择哪种模式,取决于对执行环境的纯净度、性能需求以及是否需要利用shell特性。理解这些细微差别,有助于更精细地控制容器的行为,优化应用部署与管理流程。
193 0
|
6月前
|
Dockerfile中RUN、CMD、ENTRYPOINT、SHELL命令的区别
理解这些指令的差异和应用场景,有助于构建高效、灵活且易于管理的Docker镜像。在实际应用中,根据需要选择合适的指令,可以有效地控制镜像构建和容器运行的行为。
379 0
shell脚本变量 $name ${name}啥区别
shell脚本变量 $name ${name}啥区别
Linux环境变量之shell中export定义全局变量和echo 变量的区别
Linux环境变量之shell中export定义全局变量和echo 变量的区别
|
11月前
|
shell 单引号和双引号区别
shell 单引号和双引号区别
80 0
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(深入df和dh的区别和探索)
256 1
Shell 数组使用( 及 @ 跟 * 的区别)
Shell 数组使用( 及 @ 跟 * 的区别)
229 0
Shell 变量使用(环境变量、预定义变量、位置变量、自定义变量的区别)
Shell 变量使用(环境变量、预定义变量、位置变量、自定义变量的区别)
208 0
iOS 逆向编程(十)sh脚本(shell)编写与执行指令区别
iOS 逆向编程(十)sh脚本(shell)编写与执行指令区别
324 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等