首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PHP中整洁地显示命令提示符的输出

在PHP中整洁地显示命令提示符的输出
EN

Stack Overflow用户
提问于 2020-08-13 16:20:26
回答 2查看 45关注 0票数 0

我希望在python文件在命令提示符中运行一些命令之后,整洁地显示它的输出。

目前,PHP代码的一部分如下所示:

代码语言:javascript
复制
$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);
echo $output2

它基本上将用户输入发送到python文件amassprocess.py,并使用用户输入运行该文件。

amassprocess.py文件当前如下所示:

代码语言:javascript
复制
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:忽略两个asnum,其中一个是用于测试的。

运行python脚本的结果如下:

代码语言:javascript
复制
Here is a list of top level seed domain related to the AS Number provided:
ttvnw.net
justin.tv
twitch.tv
socialcam.com
Traceback (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脚本时的输出如下:

代码语言:javascript
复制
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中显示时,如下所示:

代码语言:javascript
复制
Here is a list of top level seed domain related to the AS Number provided:
ttvnw.net
justin.tv
twitch.tv
socialcam.com

目前在PHP中,结果只显示在一行中,如下所示:

代码语言:javascript
复制
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

如有任何帮助或想法,我将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-13 16:42:54

使用代码,可以用<br />替换换行符。

代码语言:javascript
复制
$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);
echo nl2br($output2);

或者您可以获得一个行数组并在<br />上连接::

代码语言:javascript
复制
exec('python amassprocess.py 2>&1' . $asnum, $output2);
echo implode('<br />', $output2);

或者,使用您的代码,您可以在<pre><code>标记中显示哪些浏览器将使用换行符、选项卡等呈现预先格式化的格式:

代码语言:javascript
复制
$output2 = shell_exec('python amassprocess.py 2>&1' . $asnum);
echo "<pre>$output2</pre>";
票数 0
EN

Stack Overflow用户

发布于 2020-08-13 16:26:25

您可以在您的python代码中执行以下操作。

  1. 定义了一个要保存的变量

x="<br>"

  • and类似,然后将用于输出print(i+x),这将连接您的字符串.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63399281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档