来自KornShell脚本的Echo未在终端中显示

时间:2014-01-14 15:03:40

标签: linux shell unix scripting ksh

我有一个KornShell(ksh)脚本,应该在从提示符运行后显示echo

#!/bin/ksh

file="file_path"

if [ -s $file ]
    then
        echo "yes"
    else
        echo "no"
fi

但是,“是”或“否”未显示。我在其他目录中有其他脚本,它们具有类似的if语句,可正确输出到提示符。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您需要执行chmod +x example.kshchmod 0755 example.ksh才能使脚本可执行。

KornShell(ksh)脚本本身运行正常。

<强> example.ksh:

#!/bin/ksh

file="file_path"

if [ -s $file ]
    then
        echo "yes"
    else
        echo "no"
fi

example.ksh输出:

@:/tmp #chmod 0755 example.ksh
@:/tmp #ksh example.ksh
no

答案 1 :(得分:0)

您是否将脚本称为“测试”? Test是一个ksh函数,重命名您的文件或使用

调用它
./test