指定した日付以降に変更されたすべてのファイルを表示したい
コマンドは
touch --date '2011-09-19 /home/ , find /home/
この2つのコマンドを単一のexecステートメントで実行するにはどうすればよいですか?
;
または&&
を使用して、コマンドを分離できます。 ;
は、両方のコマンドを無条件に実行します。最初の1つが失敗した場合でも、2つ目は実行されます。 &&
を使用すると、2番目のコマンドが最初のコマンドに依存します。最初のコマンドが失敗すると、2番目のコマンドは実行されません。
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 &");
}
セミコロン(;)で区切ります。例:
exec("touch --date '2011-09-19' /home/; find /home/");
セミコロン区切り文字を使用すると、1行で複数のコマンドを実行できます。
<?php
$output = Shell_exec("touch --date '2011-09-19' /home/; find /home/");
echo "<pre>" . $output . "</pre>";
?>
実際、私の問題は、Pythonの仮想環境での実行pythonファイルです。通常、Python Webサイトは、コマンドラインを実行するように指示しています:仮想環境を作成します->有効化->呼び出しPythonファイル(例:python3 yourPyFile.py
)。ただし、exec()
メソッド、それは機能しませんでした。最後に、envをアクティブ化する必要がないこと、つまり、仮想環境の作成時にすでに生成されているpython path/to/virtual/env/bin/python3 yourPyFile.py
による。