簡體   English   中英

Python搜索多個硬盤

[英]Python search multiple hard drives

我正在嘗試編寫一個簡單的腳本來搜索我的本地驅動器 C: 和我的兩個外部驅動器 E: 和 F: 以獲取所有 .docx 文件並將它們寫入日志。 我有搜索部分,但一次只能搜索一個硬盤驅動器,無法弄清楚如何將結果寫入 .log 或 .txt 文件。 這是我的起始代碼:它沒有錯誤

import fnmatch
import os
rootPath = 'F:'
pattern = "*.docx"

for root, dirs, files in os.walk(rootPath):
    for filename in fnmatch.filter(files, pattern):
    print( os.path.join(root, filename))
import fnmatch
import os
drives = ['C:\\','E:\\','F:\\']
pattern = "*.docx"

for rootPath in drives:
    print "Now searching in: ",rootPath
    for root, dirs, files in os.walk(rootPath) :
        for filename in fnmatch.filter(files, pattern) :
            print os.path.join(root, filename)

將結果寫入文件,如下所示:

with open("log.txt","wb") as fs:
    result = "whatever result you are getting"
    fs.write(result)

更新:

import fnmatch
import os
drives = ['C:\\','E:\\','F:\\']
pattern = "*.py"

with open("log.txt","wb") as fs:
    for rootPath in drives:
        print "Now searching in: ",rootPath
        for root, dirs, files in os.walk(rootPath) :
            for filename in fnmatch.filter(files, pattern) :
                print os.path.join(root, filename)
                result = os.path.join(root, filename)
                fs.write(result+"\n")

嘗試自己編寫代碼,然后查看解決方案。
請詢問您是否有什么不明白的地方。

另請參閱此問題以了解其他方法: 使用 Python 在所有驅動器中搜索文件

2021 年 7 月 28 日我有我的 Debian、Raspberry Pi 和程序 Thonny,使用上面的,發現 df 終端命令將我的 1 TB 的 USB 硬盤顯示為 /media/pi/DANDER1TB

df

/dev/sdb1 976727036 215780340 760946696 23% /media/pi/DANDER1TB

所以,我只是把它放在搜索程序中並找到了我的 rusty.* 文件,雖然花了 8 秒。

奧派

    import fnmatch
    import os
     # change pattern below to search for anythin on the computer
    rootPath = '/media/pi/DANDER1TB'
    pattern = 'rusty.*'

    for root, dirs, files in os.walk(rootPath):
        for filename in fnmatch.filter(files, pattern):
            print( os.path.join(root, filename))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM