写一个python脚本,使用os、sys,输入一个目录,提取其中的Ctrl、rep1、rep2的bam文件作为变量
时间: 2024-03-11 14:50:33 浏览: 72
一个python下的分析文件目录的脚本
好的,以下是一个使用os、sys模块提取指定文件的Python脚本示例:
```python
import os
import sys
# 获取命令行参数,即输入的目录路径
dir_path = sys.argv[1]
# 定义需要提取的文件名列表
file_names = ['Ctrl.bam', 'rep1.bam', 'rep2.bam']
# 遍历目录下的所有文件
for root, dirs, files in os.walk(dir_path):
for file in files:
# 判断文件名是否在需要提取的列表中
if file in file_names:
# 如果是,则输出文件路径
file_path = os.path.join(root, file)
print(file_path)
```
使用示例:
假设以上脚本保存为extract_bam.py,目录结构如下:
```
.
└── mydir
├── Ctrl.bam
├── otherfile.txt
├── rep1.bam
└── subfolder
├── Ctrl.bam
├── rep2.bam
└── somefile.txt
```
则在命令行中执行以下命令即可提取指定文件:
```
python extract_bam.py mydir
```
输出:
```
mydir/Ctrl.bam
mydir/rep1.bam
mydir/subfolder/Ctrl.bam
mydir/subfolder/rep2.bam
```
阅读全文