Python 在32位机器上对URL使用curl和grep有区别吗?

Python 在32位机器上对URL使用curl和grep有区别吗?,python,curl,grep,ngrok,Python,Curl,Grep,Ngrok,我需要帮助解决一个我无法理解为什么会发生的问题。我有一个项目,它通过ngrok工作,并为每个用户生成tcp链接,目前我的项目为32位用户而不是64位用户带来了问题。生成的tcp链路如下所示: while True: tcp = os.popen('curl -s -N http://127.0.0.1:4040/status | grep -o "tcp://[0-9]*.tcp.ngrok.io:[0-9]*"').read() if re.match(&q

我需要帮助解决一个我无法理解为什么会发生的问题。我有一个项目,它通过
ngrok
工作,并为每个用户生成
tcp
链接,目前我的项目为32位用户而不是64位用户带来了问题。生成的tcp链路如下所示:

while True:
    tcp = os.popen('curl -s -N http://127.0.0.1:4040/status | grep -o "tcp://[0-9]*.tcp.ngrok.io:[0-9]*"').read()
    if re.match("tcp://[0-9]*.tcp.ngrok.io:[0-9]*", tcp) != None:
        print("\n{0}Ngrok TCP: {1}{2}".format(GREEN, DEFAULT, tcp))
        break
此代码工作正常,但不适用于32位用户,它仍然是一个循环,没有终止。为了检查发生了什么,我安装了一个32位虚拟机并实现了这一点。。。做
curl-s-Nhttp://localhost:4040 >在64位机器上我得到result.txt,在32位机器上我得到result.txt

当您看到文件的内容时,您会注意到,在
64位
文件中,如果我们搜索
“tcp://”
将显示链接,但如果我们对
32位
进行相同操作,则不会显示链接,因此当我们搜索
grep
时,不会显示任何内容


我的问题是我能做些什么来解决这个问题?希望我解释得很好,如果可能的话,尝试复制相同的过程来检查,是否有其他方法可以获取
ngrok
在后台运行时生成的
tcp
链接?

我找到了问题的解决方案,所以我会将其放在万一有人出现相同错误的情况下,我使用的是最新版本的
ngrok
,因此我尝试了一个旧版本,并尝试了
2.2.8
版本,我能够修复它。我从这里下载的:

我们可以看看服务器代码吗?毕竟,这就是根据客户机数据的不同而产生的差异。也许它关心的不是架构字大小,而是客户机的一些方面。我运行它的服务器只是:
os.system('./ngrok tcp-config=.config/ngrok.yml 443>/dev/null 2>&1&')
该代码在64位体系结构中运行良好,但32位不起作用,因为我在上面链接的两个文件中发现了差异。我的想法是,“这台机器是64位的,而那台机器是32位的”可能不是服务器向这两台机器提供不同数据的原因。毕竟,它怎么会知道呢?这不是AFAICT的一部分。哦,我只是注意到代码在本地运行,分别在两台机器上运行。他们是否安装了相同版本的ngrok?同一版本的Python?在各自的
.config/ngrok.yml
文件中是否有相同的内容?