19

嗨,gusy,我正在尝试学习 Bash,但似乎无法让这个基本脚本正常工作。

#!/bin/bash

function system_info
{    
    echo "function system_info"
}

$(system_info)

我得到一个功能:找不到命令问题。

4

4 回答 4

20

Bash 正在尝试评估system_info函数输出的字符串。您将需要尝试以下操作,它只会简单地运行该函数:

system_info

或将输出值存储到变量中:

value=$(system_info)
于 2013-09-04T10:57:29.063 回答
5

您需要通过以下方式调用该函数:

system_info

$(...)用于命令替换

于 2013-09-04T10:57:20.647 回答
2

仅使用函数名称调用脚本中的函数并从shell执行脚本

#!/bin/bash
function system_info {
echo "function system_info"
}
system_info
于 2013-09-04T10:57:28.617 回答
0
#!/bin/bash

function system_info
{    
    echo "function system_info"
}

echo $(system_info)

有点多余,但它可以在没有命令未找到错误的情况下工作。

或这个:

#!/bin/bash

function system_info
{    
  echo "function\n system_info"
}

printf "$(system_info)"

如果你想使用换行符。

您可以在以下位置尝试此代码:https ://www.tutorialspoint.com/execute_bash_online.php

于 2019-04-23T12:54:31.127 回答