我正在使用php文件。我从我的php运行cmd,并希望在文本文件中获取cmd的输出。
我输入:
$output = "";
exec("cd C:\\inetpub\\wwwroot\\webclient\\db\\nucleotide && blastdbcmd.exe -entry_batch $text_files_path/NewSeqGi_$OldDatabaseFile$NewDatabaseFile.txt -db $DatabaseName -outfmt %f 2>&1",&$out, &$return_var);
foreach ($out as $line) {
$output .= $line."\n";
}
file_put_contents("$text_files_path/NewSeq_$OldDatabaseFile$NewDatabaseFile.txt", $output);
有没有办法代替使用foreach将$ out保存在文本文件中?
当我运行我的代码时,它停留在
foreach ($out as $line) {
$output .= $line."\n";
}
因为$ out非常庞大。 任何的想法? 感谢。
解决方案
exec("cd C:\\inetpub\\wwwroot\\webclient\\db\\nucleotide && blastdbcmd.exe -entry_batch $text_files_path/NewSeqGi_$OldDatabaseFile$NewDatabaseFile.txt -db $DatabaseName -outfmt %f > $text_files_path/NewSeq_$OldDatabaseFile$NewDatabaseFile.txt 2>&1");
谢谢@DarkBee