Tworzenie folderów nie jest trudne, ale jeśli masz złożoną strukturę katalogów, której utworzenie (i nazwanie poprawnej nazwy zajęło Ci trochę czasu), prawdopodobnie nie chcesz jej odtwarzać, chyba że musisz. Możesz dość łatwo skopiować strukturę folderów i zignorować znajdujące się w niej pliki, ale jeśli chcesz po prostu usunąć wszystkie pliki w folderze, zachowując złożoną strukturę folderów, którą utworzyłeś, możesz to również zrobić. Pomiędzy tymi dwiema metodami możesz wybrać. Wyjaśnimy, jak możesz usuwać pliki, ale zachować foldery za pomocą prostego polecenia PowerShell.
Usuń pliki, ale zachowaj foldery
Nie potrzebujesz do tego uprawnień administratora, chyba że usuwasz pliki z katalogu głównego dysku C. Jeśli usuwasz je z folderu użytkownika lub dowolnego innego dysku, wewnętrznego lub zewnętrznego, wystarczą normalne uprawnienia użytkownika.
Otwórz PowerShell i uruchom poniższe polecenie. Zastąp „ścieżkę do folderu” pełną ścieżką do folderu , z którego chcesz usunąć pliki. To polecenie usunie wszystkie pliki z tego folderu oraz wszystkie pliki znajdujące się w podfolderach pod nim. Akcja usuwania nie powoduje wysłania plików do Kosza, więc najpierw upewnij się, że wykonałeś ich kopię zapasową.
Komenda
Get-ChildItem -Path "ścieżka do folderu" -Include *.* -File -Recurse | foreach { $_. Usuń()}
Przykład
Get-ChildItem -Path "D:\Desktop\Jan 13-17" -Include *.* -File -Recurse | foreach { $_. Usuń()}
To polecenie można również zmodyfikować tak, aby było ono ukierunkowane na określony typ pliku. Aby to zrobić, musisz zmienić następujące elementy;
*.*
Zastąp drugą gwiazdkę rozszerzeniem pliku, który chcesz wybrać. Na przykład, jeśli chcesz usunąć wszystkie pliki tekstowe z folderu, użyjesz poniższego polecenia.
Get-ChildItem -Path "ścieżka do folderu" -Include *.txt -File -Recurse | foreach { $_. Usuń()}
Wszystkie inne pliki pozostaną nietknięte. Tak jak poprzednio, pliki nie zostaną wysłane do Kosza, więc zrób ich kopię zapasową, zanim je usuniesz. To polecenie może być również wykorzystane do usunięcia pliku o tej samej nazwie i znajdującego się w wielu folderach, np. image.png. Ponownie zmodyfikujesz bit za pomocą dwóch gwiazdek. Polecenie będzie wyglądać następująco.
Get-ChildItem -Path "ścieżka do folderu" -Include image.png -File -Recurse | foreach { $_. Usuń()}
Istnieją zaawansowane narzędzia do usuwania plików, które mogą to zrobić, ale najlepsze z nich są często trudne do ustalenia. To polecenie jest proste w obsłudze i istnieje znacznie mniejsza szansa na błąd, ponieważ nic nie spowoduje usunięcia folderów.