【发布时间】:2014-12-17 11:52:01
【问题描述】:
我使用的是 Mac。
我在服务器上有一个 Python 文件。假设它在这里:http://jake.com/python_file.py。我想制作一个我可以run in Terminal by double-clicking 的脚本,并将在本地机器上的终端中运行 Python 文件。有什么想法吗?
我是否必须使用 SSH 连接到服务器并使用download the file 连接到硬盘驱动器上的临时位置 (/tmp?),然后在完成后将其删除?但这还有另一个问题。它必须将 Python 文件下载到用户主文件夹中的某个位置,因为我认为用户没有必要的权限来写入文件夹 /tmp 或 /var 或类似的东西。
我四处寻找解决问题的方法并找到了this。它讨论了如何在 unix 上使用 SSH 执行远程脚本,但我尝试使用我的 Python 文件执行此操作,但没有成功。
如果您没有意识到,我希望这样做的主要原因是用户可以在本地运行文件,但他们无法读取/编辑存储在服务器上的实际 Python 文件。
如果有人对如何实现这一点有任何想法(无论是否使用上述想法),请告诉我,我将不胜感激!
谢谢, 杰克
【问题讨论】:
-
用户没有对
/tmp的写入权限是不寻常的。此外,如果用户可以下载脚本,那么他们可以随意阅读和修改它 - ssh 只会限制可以这样做的用户集。 -
@mhawke 没关系。我真的不在乎是否有人阅读我只关心 Python 文件的脚本。但是如果他们不知道 python 文件在哪里,那么他们就无法读取它。
-
“脚本”是指远程 Python 文件。你将如何向确定的用户隐藏它的位置?
-
@mhawke 好吧,如果必须将文件下载到用户的计算机上,那么我想他们可以找到它,但我认为如果它隐藏在文件系统中将很难找到。但是如果该文件可以远程运行,那么无论用户多么确定,他们都无法访问它。我在这里可能完全错了,但是不可能像 PHP 一样在服务器端运行 Python 文件,这样文件就永远不会真正在用户的计算机上,只是输出。
-
对不起,也许我不明白。你的问题是(是?)如何在本地机器上运行存储在远程服务器上的 python 脚本 - 正如你所说的,以某种方式将 python 脚本复制到本地机器,然后执行它。如果你想远程运行python脚本,那是完全不同的事情,有很多解决方案。
标签: python macos ssh terminal osx-mavericks