[英]How to write a c program that will evaluate shell commands
這是我要執行的操作:用戶需要在提示符下輸入命令,程序將對命令進行評估以了解要執行的操作。 如果找不到命令,則外殼程序將返回錯誤“找不到命令!”。 如果用戶輸入命令EXIT,則程序應退出。 為了簡單起見,並避免用戶按Enter鍵但不鍵入任何內容的問題,我們將假定用戶將始終輸入某些內容。 不會使用空字符串。 我應該通過循環來完成此操作:
例:
外殼程序
殼牌>測試
找不到相關命令!
Shell> test2
找不到相關命令!
殼牌>出口
>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char command[20];
while (command != "exit") {
//check with an if statement for valid commands
printf("Enter a command:\n");
gets(command);
}
if (command == "exit") {
//program should exit
}
return 0;
}
使用popen()
或system()
。 Popen為I / O提供了一個處理程序,而system給了它一個垃圾,但是您仍然可以在命令行上重定向到管道(“ <”和“>”)並從那里讀寫I / O。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.