Unix中ECHO命令和变量使用的行为

时间:2013-09-16 16:44:52

标签: unix echo

无法直接发布图片,所以这里是指向它的链接: http://i.imgur.com/sjPVNU6.png

我正在尝试为我正在研究的Informatica项目学习一些基本的unix文件脚本。我过去曾经使用过一些脚本,对于该做什么只有一个非常基本的想法,所以我只是在玩现有脚本的各个部分。

我无法对命令的某些行为做出正面或反面。以下是使用ECHO的示例。事物似乎只是随机返回一个:我定义的变量,变量名称或错误。

e.g。为什么:
$ _Src="/home/axxxxxx"
$ echo "${_Src}"

返回
/home/axxxxxx


$ INFA_HOME="/home"
$ echo "${INFA_HOME}"

返回
ksh: "${INFA_HOME_^H}": bad substitution

其他不可思议的行为:
$ echo "${INFA_HOME} now"
>
$ echo "${INFA_HOME} now"
/home now
$ echo "${INFA_HOME} "
{INFA_HOME}
$ echo "${INFA_HOME} now"
/home now

2 个答案:

答案 0 :(得分:0)

看起来你的终端有一些问题。确保echo $TERM同意终端的仿真模式,并且正确设置了区域设置等。

答案 1 :(得分:0)

我认为您应该检查您的油灰或终端设置。您可能会在下面的图像中看到字符串按预期工作。

http://i.stack.imgur.com/5CQ1j.png

您分享的屏幕截图显示“^ H”,相当于退格,因此您可能已经使用了它。下次使用变量时,它会按预期打印输出。 即使第一个变量一切都很好。