我使用三种方式运行我的脚本,输出结果不同,你能解释一下为什么它会这样吗?谢谢!! 这是我的剧本
#!/bin/bash
#Program:
# This program shows "Hello World!" in your screen.
echo -e "Hello World! \a\n"
exit 0
如果我用bash和./喜欢 bash sh01.sh 运行它,输出就是
Hello World!
但是,如果我像 sh sh01.sh 那样使用sh,那就像
-e Hello World!
以下是其他一些信息
答案 0 :(得分:1)
echo
不是非常便携(即使Bash' echo
在不同的操作系统上可能会有不同的行为,在编译Bash时可能会使用不同的默认选项)。您可以使用printf
。根据{{3}}:
除非
echo
(作为第一个参数)和转义序列都被省略,否则无法在所有POSIX系统中移植-n
。printf
实用程序可以移植来模拟echo
实用程序的任何传统行为[...]