shell脚本"线程:未找到命令"

时间:2015-04-07 21:08:57

标签: c linux shell

所以我正在尝试编写我的第一个shell脚本,它可以自动为我运行一些C代码。我在网上阅读了一些资料,这是我的简短shell脚本:

#!/bin/sh
# script for grading assignment 3

echo -n "Enter the student's index  >"
read index
echo "You entered: $index"

#### Functions

function question_one
{
   gcc -pthread -o $index.1 $index.1.c
   taskset -c 1 ./$index.1 5 5
}

#### Main
$(question_one)

正如您所看到的,shell脚本非常简单,它的功能也很容易理解。首先编译一个名为1.1.c,2.1.c或3.1.c的C源文件,然后只用一个CPU运行输出文件。

当我运行此脚本时,看起来它可以成功编译文件但无法正确运行输出文件。错误消息是" assignment_three_grading:第18行:Thread:命令未找到"。但是,如果我自己手动输入命令,一切都很好。

1 个答案:

答案 0 :(得分:1)

$(question_one)

将此更改为:

question_one

要调用一个函数,只需将其命名为常规命令即可。使用$(...)捕获其输出并尝试将该输出作为另一个命令名执行:绝对不是您想要的。