我的类分配是在服务器上读取一个名为key.txt的文件,该文件位于运行在端口2323上的python脚本的同一个目录中。脚本中运行的代码如下:
while 1: print eval(raw_input("Enter Math:"))我正在与PuTTY连接,每次运行任何代码时,如果我传递的代码无效,连接就会立即下降。它没有给出任何解释,但我假设eval函数不能解析我的代码。
以下是我尝试过的一些事情及其结果:
open('key.txt', 'r').read() (或任何显式代码)将终止连接chr(104)+chr(101)+chr(108)+chr(108)+chr(111)。不管我输入什么,服务器都会吐回来。compile和输出<code object <module> at 0x7f6270ac0db0, file "buttfile", line 1>来使用<code object <module> at 0x7f6270ac0db0, file "buttfile", line 1>这是我唯一能想到的允许我传递代码的两种方法。我编写了一个小的cpp程序,将我输入的任何内容转换为char组合,并包括换行符,这样我就可以使用chr()方法输入多行代码。
因此,我的问题是如何执行代码来通过python的eval函数读取文件?
发布于 2015-03-26 18:34:11
如果要连接到linux系统,可以通过两个命令来完成:
__import__("os").system("locate key.txt")这假定locate db是最新的。
然后,当你知道位置时,只需使用:
__import__("os").system("cat /location/of/file/key.txt")它将输出到屏幕的键。
https://stackoverflow.com/questions/29285969
复制相似问题