python - 如何使用 python 脚本在目录之间“cd”
问题描述
我正在编写一个测试脚本,如果该路径被确认存在并且是一个目录,它应该从当前目录 cd 到一个新目录
serial_number = input("Enter serial number: ")
directory = "/etc/bin/foo"
if os.path.exists(directory) and os.path.isdir(directory):
#cd into directory?
subprocess.call(['cd ..' + directory])
我的困境是我不知道如何正确地将变量传递给子进程命令,或者我是否应该使用 call 或 Popen。当我尝试上面的代码时,它返回一个错误,说No such file or directory "cd ../etc/bin/"
. 我需要从当前目录返回一个目录,然后我可以/etc
在那里输入和读取一些文件。有什么建议吗?
解决方案
更改使用的工作目录
os.chdir("/your/path/here")
subprocess 将产生新进程,这不会影响您的父进程。
推荐阅读
- gis - 在 Arcade Expression 中使用 GeoJSON 服务
- java - FileOutputStream 的 Java/selenium Nullpointer 异常
- node.js - 使用 ffmetadata 和 fs 在 nodejs 中读取文件元数据返回未定义
- rust - 在 Rust 上接收 C++ uint8_t* 缓冲区的最佳方式
- reactjs - SVG 内容在作为 ReactComponent 导入时修改
- c# - 如何将 JSON 映射到对象并返回子类对象列表?
- gitlab - Gitlab.com CI 错误:gitlab-runner-build:未找到
- heroku - 在 Heroku 上使用 Docker 使用构建缓存进行部署
- html - 如何将 $('#formvalues').serialize() 与 ajax 中的 js 数组一起传递?
- python - Pandas - 如果两个不同列中的至少一个存在 True,则创建一个返回 True 的二进制列