Bash脚本回显错误

时间:2018-05-23 08:26:48

标签: bash

此代码有什么问题?我只是想从函数中写一些东西。

$ cat system_info.sh 

#!/bin/bash

drive_space ()
{
    echo "drive space"
}

$(drive_space)

错误消息

$ ./system_info.sh 
./system_info.sh: line 8: drive: command not found

2 个答案:

答案 0 :(得分:4)

$(command)命令替换。 Bash将它扩展为命令的输出(类似于`command`。在这种情况下,命令的输出为drive space,因此bash尝试运行它,但它找不到{{1} }命令。

当您需要捕获变量中的输出时,通常会使用命令替换:

drive

要调用函数,只需使用其名称:

output=$(drive_space)  # $output now contains "drive space".

答案 1 :(得分:2)

$(drive_space)执行drive space这不是命令。

#!/bin/bash

drive_space ()
{
    echo "drive space"
}

drive_space