Ich wollte nur etwas finden Ich habe ein Skript geschrieben, das die Verzeichnisse von Windows-PC-Terminals auf einmal durchsucht.
Unten in (1) des Skripts
mainDirList = os.listdir();
Geben Sie einfach das Zielverzeichnis im obigen Argument an und führen Sie es aus Der Prozess wird geschrieben, um die Liste in das Benutzerverzeichnis zu schreiben. Es kann bald aktualisiert werden.
import os
from io import StringIO
from io import BytesIO
import datetime
#Erstellen eines io-Objekts
#Puffer die Ausgabe
i = StringIO()
#Holen Sie sich das Laufzeitverzeichnis
path = os.getcwd()
#Scan-Quellverzeichnis(1)
mainDirList = os.listdir("C:\\")
separate = "\\"
tab = " "
def checkAllData(fileName, path, fp, tab = " "):
"""Nur ausführen, wenn das erste an die Funktion übergebene Argument ein Verzeichnis ist"""
"""Beenden Sie in diesem Fall den Vorgang und scannen Sie das Verzeichnis rekursiv."""
if os.path. isdir(path) == True:
fp.write(tab + fileName + "\n")
directoryList = os.listdir(path)
for __temp__ in directoryList :
if os.path.isdir( path + separate + __temp__) == True:
"""Übergeordnetes Verzeichnis ausgeben"""
fp.write(tab + __temp__ + "\n");
res = (checkAllData(__temp__, path + separate + __temp__, fp, tab + " "));
else:
fp.write(tab + "->" +__temp__ + "\n")
else :
"""Wenn das erste an die Funktion übergebene Argument eine Datei ist, geben Sie es so aus, wie es ist"""
fp.write(tab + "->" + fileName + "\n")
"""Verzeichnisstruktur in Datei schreiben"""
try:
#Geben Sie die Liste der gescannten Verzeichnisse in eine Datei aus.
fp = open("C:\\Users\\Taro\\test.dat", "w", encoding="CP932")
#Starten Sie das Scannen des Verzeichnisses
for tempLine in mainDirList:
try:
"""Durchlaufen Sie die aktuelle Verzeichnishierarchie"""
path = "C:" + separate + tempLine
if os.path.exists(path):
fp.write(tempLine + "\n");
checkAllData(tempLine, path, fp, " " )
else :
fp.write("->" + tempLine + "\n");
except Exception as e:
print(str(e))
except :
fp.write("zerquetschen" + "\n");
fp.close()
except Exception as e:
print(str(e))