温馨提示×

怎么在CentOS中使用反引号

小樊
50
2026-08-20 00:27:19
栏目: 智能运维

CentOS(以及大多数 Linux 发行版) 中,反引号“`” 主要用于 命令替换(Command Substitution),也就是把命令的执行结果当作字符串使用。


一、反引号的基本用法

反引号是键盘上 Esc 键下方、数字 1 左边的那个键(和 ~ 同一个键)。

示例 1:基本命令替换

echo "当前时间是: `date`"

执行结果类似:

当前时间是: Thu Jun 27 10:30:12 CST 2024

等价于(推荐写法):

echo "当前时间是: $(date)"

二、常见使用场景

1️⃣ 把命令结果赋值给变量

files=`ls`
echo $files

或(推荐):

files=$(ls)

2️⃣ 在脚本中使用

#!/bin/bash
ip=`hostname -I`
echo "本机IP是: $ip"

3️⃣ 在条件判断或路径中使用

cd `dirname /home/user/test.txt`
pwd

三、反引号 vs $()(重要)

写法 是否推荐 原因
`command` ❌ 不推荐 可读性差,嵌套麻烦
$(command) ✅ 推荐 可读性好,支持嵌套

嵌套示例

echo $(ls $(pwd))

如果用反引号写嵌套会非常混乱:

echo `ls \`pwd\``

四、在 CentOS 中需要注意的点

✅ CentOS 默认 shell

CentOS 7/8 默认使用 bash,反引号在 bash、sh 中都能正常使用。

查看当前 shell:

echo $SHELL

✅ 如果找不到反引号

  • 确认键盘布局
  • 英文输入法下:~` 是同一个键

✅ 脚本中建议使用 #!/bin/bash

#!/bin/bash
result=`uname -r`
echo $result

五、典型错误示例

❌ 忘了闭合反引号:

echo `date

✅ 正确:

echo `date`

六、总结一句话

在 CentOS 中,反引号用于执行命令并获取其输出,但更推荐使用 $(命令) 的方式。

如果你有具体场景(比如 写脚本 / 定时任务 / 判断条件 / 配合 awk/sed),可以贴出来,我可以帮你具体写示例。

0