我尝试打印“狗是最好的”。使用这个 bash 脚本。
#!/bin/bash
ANIMAL="Dog"
echo "$ANIMALs are the best."
exit
但是,我得到了“是最好的”。而是打印出来,因为s
in$ANIMALS
没有与变量分开。我该如何分开它?
我尝试打印“狗是最好的”。使用这个 bash 脚本。
#!/bin/bash
ANIMAL="Dog"
echo "$ANIMALs are the best."
exit
但是,我得到了“是最好的”。而是打印出来,因为s
in$ANIMALS
没有与变量分开。我该如何分开它?
带大括号:echo "${ANIMAL}s are the best."
带引号:echo "$ANIMAL"'s are the best.'
使用 printf:printf '%ss are the best.\n' "$ANIMAL"
大多数时候我不会使用引号。我觉得它不可读,但知道它是件好事。
只需用花括号将变量的名称括起来。
#!/bin/bash
ANIMAL="Dog"
echo "${ANIMAL}s are the best."
exit
#!/bin/bash
ANIMAL="Dog"
echo "${ANIMAL}s are the best."
exit
答案不再是唯一的,而是正确的……
将变量移到 echo 引号之外:
#!/bin/bash
ANIMAL="Dog"
echo $ANIMAL"s are the best."
exit
或者 :
#!/bin/bash
ANIMAL="Dog"
echo "${ANIMAL}s are the best."
exit
两者都为我工作
无用的报价,无用的退出。完成的脚本不需要帮助即可退出,但在获取该脚本时退出会咬你。
ANIMAL=Dog
echo ${ANIMAL}s are the best.