如何在PHP中同时执行两个CMD查询
如果命令1(cmd查询)成功执行,我希望接下来执行命令2(它还包含一些cmd查询)。在上面的脚本中,仅执行命令1。它不会显示命令2的任何结果如何在PHP中同时执行两个CMD查询,php,exec,Php,Exec,如果命令1(cmd查询)成功执行,我希望接下来执行命令2(它还包含一些cmd查询)。在上面的脚本中,仅执行命令1。它不会显示命令2的任何结果 我在这上面浪费了两天时间,没有找到任何解决方案。您可以使用shell\u exec()PHP函数直接在脚本中运行shell命令 语法:字符串shell\u exec(字符串$cmd) 示例: $command1 = "interfacename -S ipaddress -N nms -P company "; $command2 = "list sear
我在这上面浪费了两天时间,没有找到任何解决方案。您可以使用
shell\u exec()
PHP函数直接在脚本中运行shell命令
语法:字符串shell\u exec(字符串$cmd)
示例:
$command1 = "interfacename -S ipaddress -N nms -P company ";
$command2 = "list search clientclass hardwareaddress Mac address ";
if ( exec( $command1 . "&&" . $command2 ) ) {
echo "successfuly executed";
} else {
echo "Not successfuly executed";
}
$output = shell_exec('ls -lart');
var_dump($output); #Showing the outputs
可以在单个命令行中使用多个条件
示例:
$command1 = "interfacename -S ipaddress -N nms -P company ";
$command2 = "list search clientclass hardwareaddress Mac address ";
if ( exec( $command1 . "&&" . $command2 ) ) {
echo "successfuly executed";
} else {
echo "Not successfuly executed";
}
$output = shell_exec('ls -lart');
var_dump($output); #Showing the outputs
在上面的示例中,“Deleted”
成功删除文件后,字符串将分配给$output
。否则,错误/警告/空
字符串将分配给$output
变量。您应该使用$output
字符串创建条件
这是你的文件
注意:函数shell_exec()
输出将有一个新行
字符。您可以使用shell_exec()
PHP函数直接在脚本中运行shell命令
语法:字符串shell\u exec(字符串$cmd)
示例:
$command1 = "interfacename -S ipaddress -N nms -P company ";
$command2 = "list search clientclass hardwareaddress Mac address ";
if ( exec( $command1 . "&&" . $command2 ) ) {
echo "successfuly executed";
} else {
echo "Not successfuly executed";
}
$output = shell_exec('ls -lart');
var_dump($output); #Showing the outputs
可以在单个命令行中使用多个条件
示例:
$command1 = "interfacename -S ipaddress -N nms -P company ";
$command2 = "list search clientclass hardwareaddress Mac address ";
if ( exec( $command1 . "&&" . $command2 ) ) {
echo "successfuly executed";
} else {
echo "Not successfuly executed";
}
$output = shell_exec('ls -lart');
var_dump($output); #Showing the outputs
在上面的示例中,“Deleted”
成功删除文件后,字符串将分配给$output
。否则,错误/警告/空
字符串将分配给$output
变量。您应该使用$output
字符串创建条件
这是你的文件
注意:函数shell_exec()
输出将有一个新行
字符。您可以使用
或a&&
来分隔命令。代码>无条件运行这两个命令。如果第一个失败,第二个仍然运行。使用&&
使第二个命令依赖于第一个命令。如果第一个命令失败,第二个命令将不会运行 您可以使用
或a&&
来分隔命令。代码>无条件运行这两个命令。如果第一个失败,第二个仍然运行。使用&&
使第二个命令依赖于第一个命令。如果第一个命令失败,第二个命令将不会运行 如果我正确理解您的问题,您希望执行$command1
,然后仅在$command1
成功时执行$command2
您尝试的方法是,将命令与&&
连接在一起,这是shell脚本中的正确方法(它甚至可以与PHP函数一起工作)。但是,因为您的脚本是用PHP编写的,所以让我们用PHP的方式来完成它(事实上,这是相同的方式,但我们让PHP执行逻辑和
操作)
使用PHP函数运行每个命令并向其传递三个参数。第二个参数($output
,通过引用传递)是一个数组变量exec()
附加命令的输出。第三个参数($return\u var
,也通过引用传递)是由exec()
使用已执行命令的退出代码设置的变量
Linux/Unix程序的惯例是返回0
退出代码表示成功,返回(一字节)正值(1
。255
)表示错误。另外,Linux shell上的&
操作符知道0
表示成功,非零值表示错误
现在,PHP代码:
$data = "rm a.txt && echo \"Deleted\"";
$output = exec($data);
var_dump($output);
if($output=="Deleted"){
#Successful
}
代码结束后,$code1
和$code2
包含两个命令的退出代码;如果$code1
不为零,则第一个命令失败,$code2
为零,但第二个命令未执行
$out1
和$out2
是包含两个命令输出的数组,按行拆分。如果我正确理解您的问题,您希望执行$command1
,然后仅在$command1
成功时才执行$command2
您尝试的方法是,将命令与&&
连接在一起,这是shell脚本中的正确方法(它甚至可以与PHP函数一起工作)。但是,因为您的脚本是用PHP编写的,所以让我们用PHP的方式来完成它(事实上,这是相同的方式,但我们让PHP执行逻辑和
操作)
使用PHP函数运行每个命令并向其传递三个参数。第二个参数($output
,通过引用传递)是一个数组变量exec()
附加命令的输出。第三个参数($return\u var
,也通过引用传递)是由exec()
使用已执行命令的退出代码设置的变量
Linux/Unix程序的惯例是返回0
退出代码表示成功,返回(一字节)正值(1
。255
)表示错误。另外,Linux shell上的&
操作符知道0
表示成功,非零值表示错误
现在,PHP代码:
$data = "rm a.txt && echo \"Deleted\"";
$output = exec($data);
var_dump($output);
if($output=="Deleted"){
#Successful
}
代码结束后,$code1
和$code2
包含两个命令的退出代码;如果$code1
不为零,则第一个命令失败,$code2
为零,但第二个命令未执行
$out1
和$out2
是包含两个命令输出的数组,行拆分。这不能解决我的问题。这不能解决我的问题。如何使用shell\u exec执行同步条件cmd查询?我正在等待您的答案@Sumon sarker如何使用shell\u exec执行同步条件cmd查询?我正在等待您的答案@Sumon sarker我使用了&&运算符,但是的