python os调用命令行切换目录并合并文件
时间: 2024-10-05 13:04:57 浏览: 23
在Python中,你可以使用os模块的`os.chdir()`函数来改变当前工作目录,而使用`subprocess`模块可以执行系统命令。如果你想要合并两个文件(如.txt格式),通常我们会提到的是文本文件的合并,而不是直接操作操作系统命令行。对于文本文件合并,你可以使用`open()`函数读取每个文件的内容,然后写入到另一个文件中。
下面是一个简单的例子:
```python
import os
import subprocess
from typing import List
# 定义要更改的目录
dir_path = '/path/to/directory'
# 使用os.chdir()切换到指定目录
os.chdir(dir_path)
# 假设我们要合并的文件名是file1.txt和file2.txt
files_to_merge = ['file1.txt', 'file2.txt']
# 创建目标文件,如果不存在
with open('merged_file.txt', 'w') as outfile:
# 遍历每个文件
for file in files_to_merge:
with open(file, 'r') as infile:
# 写入内容到目标文件
outfile.write(infile.read())
# 要合并文件,可以直接使用cat命令,但在Python里并不推荐这样做
# 这里仅示例如何通过子进程运行shell命令,实际上不需要
# merged_files_command = "cat " + " ".join(files_to_merge) + " > merged_file.txt"
# subprocess.run(merged_files_command, shell=True, check=True)
print(f"目录已切换到 {os.getcwd()},文件合并完成.")
```
阅读全文