读写命令行字符串的算法

时间:2013-02-23 04:56:33

标签: command-line terminal command-line-arguments

我正在尝试编写一个可以读取命令字符串并验证它的程序(获取命令的名称及其参数),更改这些参数然后动态重写命令字符串。

我正在寻找可以解析命令字符串的算法或regEx。我熟悉DOS 6.2和批处理文件,但我对Mac很少知道如终端,unix,shell等我正在使用的东西。我不确定参数是否是从一个命令到下一个命令的不同语法。

更多信息:
我要做的就是验证命令行的格式是否正确,例如,文件的路径是否有引号,如果存在,则转义为空格。我希望它是通用的,以便它可以使用任何命令。

我正在使用Mac,所以我可以在终端测试。

1 个答案:

答案 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”目录

您动态运行程序并更改命令和选项。