如何检查后台操作员'&'的命令?

时间:2012-09-29 10:45:41

标签: c linux shell unix background-process

我用C语言编写脚本。我从用户那里接受输入命令。现在我想确定输入命令中是否包含后台运算符?如果是,则在后台运行该linux系统命令,然后要求用户输入他想要执行的另一个命令。 我是这个领域的新人,所以没有太多想法,请帮忙!

1 个答案:

答案 0 :(得分:1)

你需要找到你的'&'字符串中的字符。

您可以使用strrchr,从结尾开始搜索字符串中的字符。如果找到,它将返回指向该字符的指针,如果未找到则返回NULL。 接下来,检查它是否是字符串的最后一个非空白字符。 (您可以从此指针迭代,直到字符串结尾('\ 0'))

这不是一个完美的解决方案(你可以找到像这样的shell命令:ls & ;) 但在你的情况下,我认为这就足够了。