本文主要总结在cygwin编译器下,编译出一个.exe可执行程序,然后在其上,用自定义的命令行指令,驱动该.exe可执行程序对应功能的执行。
比如,我要定义一个test.exe可执行程序,当我在cygwin下,敲入命令行 -start ,则test.exe可执行程序打印出this is a start command!。当我敲入命令行 -stop ,则test.exe可执行程序打印出this is a stop command!。
具体的步骤如下所述:
1.1新建一个文本文件,将其命令为test.c,用notepad打开,写入如下代码:
#include <stdio.h>
#include <string.h>
void runStartRecovery();
void runStopRecovery();
int main(int argc, char *argv[])
{
if(argc > 0){
if(strcmp(argv[1],"-start")==0){
runStartRecovery();
}
if(strcmp(argv[2],"-stop")==0){
runStopRecovery();
}
}
return 0;
}
void runStartRecovery(){
printf("this is a start command!\n");
}
void runStopRecovery(){
printf("this is a stop command!\n");
}
1.2在cygwin上,进入test.c文件所在目录,然后执行下面对应命令行,将其编译成.exe可执行程序。
1.2.1进入test.c所在目录语句,可以直接将其拖入cygwin,然后删除test.c就是其所在目录。
cd /cygdrive/d/QtProject/uuid12/TestExe/
1.2.2敲入如下语句
gcc test.c -o test.exe
1.3敲入如下命令,运行test.exe可执行程序,结果如下图所示:
./test.exe -start -stop
由上图结果可知,该例子成功通过敲入命令行语句,执行.exe可执行程序对应功能或函数。
参考内容:
https://blog.csdn.net/qq_20480611/article/details/45827451
http://www.cnblogs.com/avril/archive/2010/03/22/1691477.html