2024-04-26 00:27:41 发布
网友
有没有命令行命令可以禁止从python程序访问系统中的所有文件和文件夹?如果程序试图访问任何文件,它应该给出一个错误。例如,在命令行中:
$ python filename.py <some_command>
或者类似的东西。在
它不应该允许在程序中使用open('filename.txt')之类的函数。在
open('filename.txt')
编辑:sudo允许以管理员权限运行程序。我们可以创建sudo这样的命令来限制对其他文件和文件夹的访问吗?在
谢谢。在
从python的命令行选项列表中似乎没有这个选项(防止IO的沙盒似乎不是too effective)。例如,您可以创建自己的命令参数来获得此功能
import argparse class blockIOError(Exception): pass parser = argparse.ArgumentParser(description='Block IO operations') parser.add_argument('-bIO','-blockIO', action='store_true', help='Flag to prevent input/output (default: False)') args = parser.parse_args() blockIO = args.bIO if not blockIO: with open('filename.txt') as f: print(f.read()) else: raise blockIOError("Error input/output not allowed")
缺点是你需要在if语句中包装每个打开的、读取的等等。这样做的好处是,您可以确切地指定您想要允许的内容。然后输出如下:
从python的命令行选项列表中似乎没有这个选项(防止IO的沙盒似乎不是too effective)。例如,您可以创建自己的命令参数来获得此功能
缺点是你需要在if语句中包装每个打开的、读取的等等。这样做的好处是,您可以确切地指定您想要允许的内容。然后输出如下:
^{pr2}$相关问题 更多 >
编程相关推荐