【发布时间】:2011-10-30 15:59:52
【问题描述】:
我想显示指定日期之后修改的所有文件
命令是
touch --date '2011-09-19 /home/ , find /home/
如何在单个 exec 语句中执行这两个命令。提前致谢
【问题讨论】:
我想显示指定日期之后修改的所有文件
命令是
touch --date '2011-09-19 /home/ , find /home/
如何在单个 exec 语句中执行这两个命令。提前致谢
【问题讨论】:
用分号 (;) 分隔它们。示例:
exec("touch --date '2011-09-19' /home/; find /home/");
【讨论】:
分号分隔符允许您在一行上运行多个命令。
<?php
$output = shell_exec("touch --date '2011-09-19' /home/; find /home/");
echo "<pre>" . $output . "</pre>";
?>
【讨论】:
您可以使用; 或&& 来分隔命令。 ; 无条件运行这两个命令。如果第一个失败,第二个仍然运行。使用&& 使第二个命令依赖于第一个。如果第一个命令失败,第二个命令将不会运行。
command1 ; command2 (run both uncondtionally)
command1 && command2 (run command2 only if command1 succeeds)
【讨论】:
这就是我如何同时编码拇指,然后是 flv 视频..我需要从 avi 文件生成 2 个拇指。在拇指之后,我需要将相同的 avi 转换为 flv 或其他任何东西。所以,这是我平时使用的代码。
$command_one = "do whatever the script does best";
$command_two = "do whatever the script does second best";
//execute and redirect standard stream ..
@exec($command_one."&& ".$command_two.">/dev/null 1>/dev/null 2>/dev/null &");
如果需要,您还可以使用 exec 运行命令数组:)
foreach($crapatoids as $crap){
$command_name = $crap;
//exec the crap below
@exec ($command_name." >/dev/null 1>/dev/null 2>/dev/null &");
}
【讨论】:
实际上,我的问题来自于在 Python 的虚拟环境中执行 python 文件。通常,Python 网站会指示我们通过命令行:创建一个虚拟环境 --> 激活它 --> 调用 Python 文件(例如:python3 yourPyFile.py)。但是,当我尝试通过使用 exec() 方法调用 php 来调整这些步骤时,它不起作用。最后,我发现你根本不需要激活env,你只需要使用path/to/virtual/env/bin/python3 yourPyFile.py创建虚拟环境时已经生成的python。
【讨论】: