在 CentOS(以及大多数 Linux 系统)中,反引号(`)用于命令替换,例如:
echo `date`
如果你在使用反引号时报错,常见原因和解决方法如下:
错误示例:
echo `date
报错类似:
unexpected EOF while looking for matching `''
✅ 解决:
确保反引号成对出现:
echo `date`
' 或全角符号)错误示例:
echo `date`
✅ 解决:
使用英文半角反引号(键盘上数字 1 左边那个键):
echo `date`
错误示例(脚本开头没写):
#!/bin/bash
✅ 解决:
脚本第一行加上:
#!/bin/bash
然后赋予执行权限:
chmod +x test.sh
./test.sh
不推荐写法:
echo `echo `date``
✅ 解决(推荐):使用 $()
echo $(echo $(date))
✅ CentOS 官方也推荐 $() 代替反引号
错误示例:
VAR = `date`
✅ 解决(等号两边不能有空格):
VAR=`date`
或
VAR=$(date)
你可以先测试最简单的命令:
echo `whoami`
如果这都报错,说明是输入法或终端字符问题。
✅ 最佳实践:
now=$(date)
echo $now
如果你能贴出具体的报错信息(完整错误提示),我可以帮你精准定位问题。