Python相当于shell find命令

时间:2017-08-08 14:19:13

标签: python-3.x

从已知的shell脚本编写我的第一个Python3脚本,并遇到了一个使用find命令和Python等效的小问题。

目录中有几天的pcap文件。用户输入定义开始日期+时间结束日期+时间

这是shell脚本中使用的命令和输出。请参阅下面的cut命令清除除文件名之外的所有内容。开始和结束时间是变量,因此在下面的示例中,我已替换实际日期+时间。

find /mnt/pcap/captures/ -type f -newermt "08/08 08:00" ! -newermt "08/08 08:02" | cut -c20-40

full_cap_1354

full_cap_1353

full_cap_1348

full_cap_1350

full_cap_1349

full_cap_1352

full_cap_1351

我确实为Python找到了运行os find命令的方法,但我似乎无法将开始和结束变量传递给命令。

subprocess.check_output('find /mnt/pcap/captures/ -type f -newermt "$date1" ! -newermt "$date2" | cut -c20-40 > /home/mydir/loading_dock/load.txt', shell = True)

所以,如果有一种方法可以传递变量,那就没问题了,因为我正在学习Python,所以希望有一种Python方法。

1 个答案:

答案 0 :(得分:0)

您应该向子进程传递一个字符串列表,而不仅仅是字符串