【问题标题】:echo not working in a commandecho 在命令中不起作用
【发布时间】:2011-05-08 23:39:42
【问题描述】:

我运行以下命令进行日志监控。

echo ---------------------BEGIN:0;awk ' NR == NR {print $0; recno=NR; rec=$0} END {printf "output is %010d>%s",recno, rec} ' "/var/log/messages";echo ;echo ------------------END:0;

预期的输出是

Nov 12 03:36:52 hostname gdm[27726]: GDM already running. Aborting!
output is 0000028518>Nov 12 03:36:52 hostname gdm[27726]: GDM already running. Aborting!
---------------------END:0

但是在一个 AIX 5.3 box(ksh) 上我得到以下输出

Nov 12 03:36:52 hostname gdm[27726]: GDM already running. Aborting!
output is 0000028518>Nov 12 03:36:52 hostname gdm[27726]: GDM already running. Aborting!---------------------END:0

“正在中止!”之后没有“新行”由于倒数第二个 echo 命令,它应该在那里。

这只发生在那个特定的盒子上。 谁能告诉我为什么会这样?

【问题讨论】:

    标签: unix command-line aix


    【解决方案1】:

    如果没有参数,某些版本的 Unix 有一个不输出任何内容的回显,甚至不输出换行符。可能AIX就是其中之一(我从来没有用过所以不知道)。改为这样做:

    echo ''
    

    这告诉 echo 输出一个空字符串,后跟一个换行符。

    【讨论】:

    • 我检查过了....但那不是问题...还有一些其他类似的命令....echo w/o 参数工作正常...这就是我的原因难倒......这个特定命令失败了
    猜你喜欢
    • 2021-02-22
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-20
    • 1970-01-01
    相关资源
    最近更新 更多