Nachdem ich herausgefunden hatte, dass findstr
das versteckte Bit ignoriert wird und Dateien for
trotzdem in versteckten Ordnern gefunden werden, habe ich dann den Befehl (der es respektiert) mit folgendem Befehl für eine Stapeldatei verwendet: -
@echo off pushd %userprofile% for /r %%f in (*.txt) do echo %%f | findstr "\Temporary" >NUL: || findstr /i /p mail "%%f" nul: popd
Anmerkungen:-
- Ich habe es nicht geschafft,
for /r
an die Arbeit zu gelangen, wenn ich einen Dateipfad in die Dateiübereinstimmung hinzufüge, daher die Verwendung vonpushd
/popd
. - Der erste
findstr
sucht\Temporary
(dies könnte ausgeführt werden) im Dateipfad und führt den zweitenfindstr
nur aus, wenn er nicht gefunden wird. - Der zusätzliche
nul:
Parameter im zweiten Parameterfindstr
stellt sicher, dass der Dateiname mit der gefundenen Zeichenfolge gedruckt wird. Normalerweise wird dieser Parameter weggelassen, wenn nur eine Datei übergeben wird (möglicherweise gibt es eine andere Möglichkeit, dies zu tun, aber ich verwende diesen Befehl nicht oft). - Wenn Sie dies häufig tun, möchten Sie möglicherweise den Internet-Cache in ein anderes Verzeichnis außerhalb des Benutzerprofils verschieben.
Ich habe mir diese Lösung angesehen, als der Kommentar von David Postill oben erschien. Ich habe es gerade erst bemerkt, aber ich werde meine Antwort trotzdem einreichen, da es einige Punkte hinzufügt, die in jeder Lösung berücksichtigt werden müssen.