允许将python文件添加到其他linux文件

允许将python文件添加到其他linux文件,python,html,linux,ubuntu,Python,Html,Linux,Ubuntu,我正在制作一个“战争游戏”,就像overthewire.org或sMashtestack.org上的游戏一样。当您完成游戏时,用户应该获得一个python程序,该程序具有在/var/www/html中编辑文件的额外权限,以便他们可以签名。我想有一个这样的程序,这样他们就可以在不删除其他用户的文本的情况下向html文件中添加文本,从而过滤冒犯性词语 在Linux中,如何使文件可由特定程序编辑?如何让程序用python编辑文件?我只是使用OS.St.E/P>< P>我会回答你的问题,同时也请你考虑另

我正在制作一个“战争游戏”,就像overthewire.org或sMashtestack.org上的游戏一样。当您完成游戏时,用户应该获得一个python程序,该程序具有在/var/www/html中编辑文件的额外权限,以便他们可以签名。我想有一个这样的程序,这样他们就可以在不删除其他用户的文本的情况下向html文件中添加文本,从而过滤冒犯性词语


在Linux中,如何使文件可由特定程序编辑?如何让程序用python编辑文件?我只是使用OS.St.E/P>< P>我会回答你的问题,同时也请你考虑另一种方法。

您正在寻找的功能通常由数据库处理。如果您不想使用更复杂的东西,通常只需要SQLite。然后,您需要一个简单的web应用程序来连接数据库,获取字段,然后将它们注入HTML

我会使用Flask,因为它与Jinja一起提供,这是一个非常简单的堆栈

如果您确实想直接在Python中编辑HTML文件,则需要对运行Python脚本的任何用户具有写入权限。在Ubuntu上,如果您运行Apache,该文件夹通常由www数据所有

然后用Python打开文件,对其执行文件操作,然后关闭它

打开(“/var/www/html/somefile.txt”,“a”)作为我的文件:
myfile.write(“l33t h4x0r已完成挑战!\n”)


这是一个在Python中执行简单附加操作的示例。

一个可能有效的方法是创建一个只有您的程序和用户是其成员的自定义组。然后,对文件设置适当的所有权、组和权限。要仅添加文本,当然可以附加“>>”。但如果你想把它放在文件的某个特殊部分,那就更麻烦了。您可以考虑允许用户将文本添加到某个特殊文件中,然后让程序周期性地读取和处理该文件,以将适当的文本添加到更敏感的文件中。