如何在 python 的非工作目录中运行命令?(不是通过给出路径)

Posted

技术标签:

【中文标题】如何在 python 的非工作目录中运行命令?(不是通过给出路径)【英文标题】:How to run commands in the none-working directory in python?(not by giving the pathway) 【发布时间】:2011-11-03 10:43:18 【问题描述】:

我想做的是在工作目录中创建一个子目录,并且我想在子目录中运行我的一些命令,结果生成的新文件将保存在该目录中。我有不同类型的文件,主要是bam samtxt。 这是我的命令:

individual= raw_input("Please type the name of your individual")
os.mkdir(individual)
cmd="cd %s" %individual
os.mkdir("tst")
call(cmd, shell=True)

这是行不通的!在这个例子中,我试图简单地在 sub 中创建另一个目录(以使其不那么复杂)。我知道我可以给路径!但由于我有很多命令,我认为可能有更简单的方法!

【问题讨论】:

原因是我想用不同的数据多次运行这些命令,我​​想将工作目录用于我的一些常用文件,而将子目录用于其他文件。 【参考方案1】:

使用os.chdir

【讨论】:

【参考方案2】:

使用os.makedirs递归创建文件夹:

folder = r'folders/to/create'
os.makedirs(folder)
os.chdir(folder)
# Your file saving code here

或者,您可以只构建完整的文件名,并在保存时使用它:

folder = r'folders/to/create'
os.makedirs(folder)
full_filename = os.path.join(folder, filename)
# Your file saving code here

【讨论】:

以上是关于如何在 python 的非工作目录中运行命令?(不是通过给出路径)的主要内容,如果未能解决你的问题,请参考以下文章

解决:python命令行运行出错 ImportError: No module named ...

Python更改使用startfile打开的exe的工作目录

如何在驻留在不同路径的包上运行带有mod选项“-m”的Python3?

Python学习日志-03

Python学习日志-03

如何从类似于 pip 或 howdoi 命令的任何终端实例将 python 脚本作为全局命令运行?