这里发生了什么?
printf.sh:
#! /bin/sh
NAME="George W. Bush"
printf "Hello, %s\n" $NAME
命令行会话:
$ ./printf.sh
Hello, George
Hello, W.
Hello, Bush
更新:printf "Hello, %s\n" "$NAME"
有效。为什么我不使用echo
,请考虑
回声.sh:
#! /bin/sh
FILE="C:\tmp"
echo "Filename: $FILE"
命令行:
$ ./echo.sh
Filename: C: mp
POSIX 规范echo
说, “鼓励使用新应用程序printf
而不是echo
”(出于这个和其他原因)。