w systemie Linux / BSD mogę uruchomić
find my-path-here -not -iname "* txt" -type -f -delete
spowoduje to usunięcie wszystkich plików, które nie są plikami .txt w określonym folderze.
Chcę zrobić coś podobnego w oknach. Najlepiej nie używać PowerShell. :)
Dzięki
windows
windows-10
find
mrjayviper
źródło
źródło
Odpowiedzi:
Agent Ransack / FileLocator Lite jest do tego idealny
Jest bezpłatny do użytku osobistego.
Zestaw
File name:
doNOT: *.txt
Możesz opcjonalnie wyszukać
Containing text:
Zestaw
Look in:
na twoją ścieżkęKliknij
Start
Następnie możesz wybrać elementy z wyników w zwykły sposób (kliknij, Przesunięcie + kliknij, Ctrl + kliknij itd.) i usuń.
Możesz także skonfigurować go, aby reagował F3 i Ctrl + fa zastąpić Wyszukiwanie Eksploratora Windows:
źródło
Jeśli szukasz sposobu na zrobienie tego z wiersza poleceń, polecenie for może być pomocne:
Przykład:
źródło
PowerShell daje Ci korzyść z wbudowania (w nowoczesnych wersjach Windows) i nie wymaga dodatkowego narzędzia. Jeśli nie używasz wykluczenia do wyszukiwania, normalne wyszukiwanie Eksploratora Windows może być również wystarczające. Obsługuje pewien modyfikator, aby zawęzić wyszukiwanie.
Możesz również użyć podsystemu Windows dla systemu Linux (WSL), aby nam przekazać to samo polecenie, chociaż okaże się, że ma on inne problemy i może nie działać dokładnie tak samo. Poza tym byłoby to przesadą dla tak prostej rzeczy.
źródło
Get-ChildItem -Path "C:\Temp" -Recurse -File
. Możesz nawet pominąć-Path
ale jeśli go użyjesz, będzie to bardziej wyraziste (tylko osobista opinia).