我希望在命令提示符中運行一些命令后,整齊地顯示 python 文件的輸出。目前,我的 PHP 代碼的一部分如下所示:$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);echo $output2它基本上將用戶輸入發送到 python 文件 amassprocess.py 并使用用戶輸入運行該文件。amassprocess.py 文件目前如下所示:import os, sys#asnum = sys.argv[1]asnum = "46489"print("Here is a list of top level seed domain related to the AS Number provided:")topdomain = os.system('cmd /c "amass.exe intel -asn {}"'.format(asnum))for i in topdomain: print(i) print("<br>")PS:忽略2個asnum,其中一個用于測試運行 python 腳本的結果輸出如下:Here is a list of top level seed domain related to the AS Number provided:ttvnw.netjustin.tvtwitch.tvsocialcam.comTraceback (most recent call last): File "z:/xampp/htdocs/majorproject/amassprocess.py", line 8, in <module> for i in topdomain:TypeError: 'int' object is not iterable但是,我希望運行 python 腳本時的輸出如下:Here is a list of top level seed domain related to the AS Number provided:ttvnw.net<br>justin.tv<br>twitch.tv<br>socialcam.com這樣當它在 PHP 中顯示時,它看起來像這樣:Here is a list of top level seed domain related to the AS Number provided:ttvnw.netjustin.tvtwitch.tvsocialcam.com目前在 PHP 中,結果都只顯示在一行中,如下所示:ttvnw.net justin.tv twitch.tv twitchcon.com socialcam.com Traceback (most recent call last): File "amassprocess.py", line 7, in for i in topdomain: TypeError: 'int' object is not iterable我將不勝感激任何幫助或想法。謝謝。
2 回答

慕田峪4524236
TA貢獻1875條經驗 獲得超5個贊
使用您的代碼,您可以將換行符替換為<br />:
$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);
echo nl2br($output2);
或者您可以獲取一系列行并加入<br />::
exec('python amassprocess.py 2>&1' . $asnum, $output2);
echo implode('<br />', $output2);
<pre>或者,使用您的代碼,您可以在標簽中顯示<code>,瀏覽器將使用換行符、制表符等預先格式化這些瀏覽器:
$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);
echo "<pre>$output2</pre>";
- 2 回答
- 0 關注
- 158 瀏覽
添加回答
舉報
0/150
提交
取消