如何在Python脚本中运行bash命令?

时间:2014-10-07 14:53:55

标签: python bash

我想用bash脚本将一些PDF文件转换为TXT文件。

pdf2txt.py -o otuput.txt input.pdf

这是为单个文件执行任务的命令。 但对于大型文件集,我正在尝试执行以下操作。

#!/bin/bash
cd /home/z..../P...../file/pdf

python << END

import os
file_lst = os.listdir(r'/home/z..../P...../file/pdf')

out_file_lst = []
l = len(file_lst)

for i in file_lst:
    out_file_lst.append(file_lst[0].split('.')[0] + '.txt')

for i in range(l):
    pdf2txt.py -o out_file_lst[i] file_lst[i] 
    # How to run this bash command inside of python ?

END

2 个答案:

答案 0 :(得分:3)

您可以创建一个bin / bash脚本,用于转换目录中txt文件中的所有pdf文件。

#!/bin/bash
for file in *.pdf;
do pdftotext "$file" "$file.txt";
done

答案 1 :(得分:0)

我强烈建议subprocess lib。

例如:

return_code = subprocess.call(['ls', '-l'])