首页 > 解决方案 > 为什么从 shell 脚本文件执行时没有错误“-bash:!”:未找到事件?

问题描述

交互式 shell 中的以下命令会产生其他问题中解释的错误:

$ echo "Hello World !"
-bash: !": event not found

为什么放入 shell 脚本文件并执行时错误消失了?

cat <<EOT > test.sh
#!/bin/sh

VAR=1
echo "Hello World !$VAR"
echo "Hello World !2"
echo "Hello World !3"
EOT

以下都不会产生错误!

chmod a+x ./test.sh
./test.sh
bash   ./test.sh
sh     ./test.sh
source ./test.sh

标签: bashshell

解决方案


推荐阅读