从C运行shell脚本[重复]

问题描述

|                                                                                                                   这个问题已经在这里有了答案:                                                      

解决方法

        
system
包含整个命令行的单个字符串,因此您将
system(\"/your/shell/script \'argument 1\' \'argument 2\'\");
使用ѭ0很少是一个好主意,因为您必须自己转义所有元字符-如上所示,即使空格也是一个问题。您正在寻找exec *函数之一,例如execv。它的第一个参数是程序的名称(在本例中为“ 3”或shell脚本本身),第二个参数是以NULL结尾的参数字符串列表:
char* program = \"/your/shell/script\";
char* args[3];
args[0] = \"argument 1\";
args[1] = \"argument 2\";
args[2] = NULL;
execv(program,args);
    ,        
system(\"scriptname arg1 arg2\")
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...