如何在linux上通过python代码进入文件夹

如何在linux上通过python代码进入文件夹,python,operating-system,scrapy,Python,Operating System,Scrapy,我正在使用pythonscrapy,我试图使用操作系统模块进入一个文件夹,但无法做到,下面是我尝试过的 import os scrapepath = "cd /home/local/username/project/scrapy/modulename" os.system(scrapecmd) 结果: 最后,我的意图是通过上面提到的python代码从linux中的某个地方(例如home)进入folderDestination。实际上,我在这里动态地生成上面路径的某些部分,然后我应该进入该路

我正在使用pythonscrapy,我试图使用操作系统模块进入一个文件夹,但无法做到,下面是我尝试过的

import os

scrapepath = "cd /home/local/username/project/scrapy/modulename"

os.system(scrapecmd)
结果:

最后,我的意图是通过上面提到的python代码从linux中的某个地方(例如home)进入folderDestination。实际上,我在这里动态地生成上面路径的某些部分,然后我应该进入该路径并从该文件夹中运行一些命令

任何人都可以告诉我如何在linux中使用python代码进入文件夹,如上所述。

使用:

使用:


要更改当前工作目录,请执行以下操作:

os.chdir("/home/local/username/project/scrapy/modulename")
您还可以简单地将该模块添加到python的路径中,该路径就是导入的路径:


要更改当前工作目录,请执行以下操作:

os.chdir("/home/local/username/project/scrapy/modulename")
您还可以简单地将该模块添加到python的路径中,该路径就是导入的路径:


好的,os.system在子shell中执行string命令。因此,当您执行以下操作时:

os.system("cd /path/to/directory/")

cd命令实际上将在子shell中执行。但是,由于子shell在os.system执行后退出,因此您的cd对您的应用程序没有实际影响。

AFAIK,os.system在子shell中执行string命令。因此,当您执行以下操作时:

os.system("cd /path/to/directory/")

cd命令实际上将在子shell中执行。但是,由于子shell在os.system执行后退出,因此cd对应用程序没有实际效果。

为什么不直接运行该命令?e、 g.,subprocess.call[/path/to/my/command,arg1,arg2]@JohnWang:当然有很多程序的工作目录与行为相关。我正在处理scrapy。实际上,我不想直接运行命令,因为我将创建大量的scrapy文件夹,每个文件夹由单个蜘蛛名称组成,因此,您需要进入每个文件夹,并需要通过该爬行器名称运行命令。为什么不直接运行该命令?e、 g.,subprocess.call[/path/to/my/command,arg1,arg2]@JohnWang:当然有很多程序的工作目录与行为相关。我正在处理scrapy。实际上,我不想直接运行命令,因为我将创建大量的scrapy文件夹,每个文件夹由单个蜘蛛名称组成,因此,需要输入每个文件夹,并需要通过该蜘蛛名称运行命令作为一个附加项-这就是os.system在原始问题中无法工作的原因,是os.system创建一个新进程-更改该进程中的目录,然后关闭该进程。另外,os.system在原始问题中不起作用的原因是os.system创建了一个新进程-更改该进程中的目录,然后关闭该进程。
sys.path.append("/home/local/username/project/scrapy/modulename")
os.system("cd /path/to/directory/")