我正在尝试编写一个可以读取命令字符串并验证它的程序(获取命令的名称及其参数),更改这些参数然后动态重写命令字符串。
我正在寻找可以解析命令字符串的算法或regEx。我熟悉DOS 6.2和批处理文件,但我对Mac很少知道如终端,unix,shell等我正在使用的东西。我不确定参数是否是从一个命令到下一个命令的不同语法。
更多信息:
我要做的就是验证命令行的格式是否正确,例如,文件的路径是否有引号,如果存在,则转义为空格。我希望它是通用的,以便它可以使用任何命令。
我正在使用Mac,所以我可以在终端测试。
答案 0 :(得分:-1)
#include<stdio.h>
main(int argc,char *argv[])
{
if(execlp(argv[1], argv[1], argv[2], "/usr/", (char *) 0)==-1)
printf("This is not valid command\n");
exit(0);
}
运行程序:
./a.out ls -lhrt
该程序处理了多个选项。
您要更改它的目录而不是“/ usr”目录
您动态运行程序并更改命令和选项。