我正在用Python编写一个脚本。 用户必须input要运行的脚本文件夹。 有一些文件的复制和移动,并在某个点上删除一个文件夹。 所以,在任何情况下我都不希望这个脚本在根文件夹上运行。 (或者当前或父母)
所以我需要valIDation这一点。 但是,我怎么做,因为“/”“./”“。”“..”等等,作为input都是完全有效的和现有的文件夹使用os.path.isdir()。
我应该手动检查这些系统文件夹符号的input。 还是有更好的方法(现有的function也许?)来检查input是否是一个真正的现有文件夹,而不是一个系统或像(根,当前,父母等符号文件夹…)
“参数列表太长”限制是否适用于shell buildins?
从任务pipe理器启动进程并隐藏命令行参数
可执行的Python脚本不能在windows中使用sys.argv
最大数量的Bash参数!=最大数量cp参数?
batch file命令行参数
在.cmd中使用windows命令来testing32位或64位并运行命令
如何从文件中有效地读取环境参数,与exec一起使用
处理命令行参数?
在linux中隐藏C程序的命令行参数
bash脚本中的参数个数
你想通过使其绝对正常化你的路径。 您可能也想要消除符号链接:
import os.path normalized = os.path.realpath(os.path.absolute(path)) if normalized == '/': raise ValueError("Can't use root as a destination")
使路径绝对消除任何当前或父路径引用,以及任何加倍的分隔符。
要么在路径中禁止“..”,要么使用abspath来获得真正的路径。
总结以上是内存溢出为你收集整理的Python – validationinput是真实的文件夹,而不是根全部内容,希望文章能够帮你解决Python – validationinput是真实的文件夹,而不是根所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)