W Powershell lista wszystkich plików w katalogu jest bardzo proste zadanie. Musimy tylko użyć następującego polecenia, aby po prostu wypisać wszystkie pliki tylko w katalogu.
- Spis treści:
- People also search for:
- PowerShell List Files in a Directory:
- gci Alias for Get-ChildItem:
- dir alias dla Get-ChildItem:
- PowerShell list only directories:
- PowerShell list only directories krótszy skrypt:
- PowerShell listuje tylko pliki we wszystkich folderach lub katalogach:
- PowerShell list only folders in all the folders or directories:
- PowerShell listuje pliki o rozszerzeniu:
- PowerShell listuje pliki o rozszerzeniu rekurencyjnie:
- PowerShell listuje pliki o rozszerzeniu rekurencyjnie z głębokością:
- Verdict:
Spis treści:
- PowerShell List files in a Directory.
- gci alias dla get-chiltitem.
- dir alias dla get-childitem.
- PowerShell list only directories.
- PowerShell list only directories using a shorter script.
- PowerShell list files recursively.
- PowerShell list directories recursively.
- List files of a certain extension type.
- PowerShell listuje pliki o określonym typie rozszerzenia rekurencyjnie.
- Listuje pliki do głębokości w podkatalogach.
- Verdict.
People also search for:
Working Snippet for Start-Job PowerShell 2020
gci -file
Powyższy skrypt jest pokazany jest wykonywany, a wyjście jest pokazane na poniższym obrazku.
Istnieje wiele odmian tego i odwiedzimy sporo z nich w tym poście. Zobaczymy, jak gci alias pochodzi i będziemy również zobaczyć kilka różnych aliasów również. Istnieją sposoby, aby uzyskać tylko katalogi w obrębie katalogów, a także do pewnej głębokości.
Odwiedzimy tak wiele funkcji, jak tylko możemy na temat listowania plików w katalogu.
PowerShell List Files in a Directory:
Deweloperzy PowerShell sprawili, że radzenie sobie z plikami i folderami w PowerShell jest niezwykle proste. W przeciwieństwie do tradycyjnego skryptowania, w PowerShell nie musimy się zbytnio zastanawiać nad strukturą skryptu. Dzieje się tak dlatego, że PowerShell jest oparty na obiektowym wejściu i wyjściu. Jeśli ktoś jest dobry w obiektowym języku programowania, pisanie skryptów w PowerShell przychodzi mu naturalnie.
Na początek, aby uzyskać tylko pliki w katalogu, możemy użyć cmdleta get-childitem. Do cmdleta dodamy przełącznik -file, aby pobrać tylko pliki w określonym katalogu.
get-childitem -file
Wyraźnie rozwiązuje to nasz problem. Ale czy możemy uczynić ten skrypt bardziej wydajnym? W rzeczywistości możemy.
gci Alias for Get-ChildItem:
Ccmdlet get-childitem posiada alias o nazwie gci. Zmniejsza to wysiłek pisania całego skryptu. Poniższy skrypt wygeneruje dane wyjściowe, których potrzebujemy.
gci -file
dir alias dla Get-ChildItem:
Ccmdlet get-childitem ma również dość popularny alias. Można go zastąpić przez dir, aby uzyskać te same wyniki.
dir -file
Powyższy skrypt wygeneruje następujące dane wyjściowe.
PowerShell list only directories:
Poznaliśmy sposób na wylistowanie tylko plików w określonym katalogu. Teraz zobaczymy jak wylistować tylko katalogi z danego katalogu. Możemy to zrobić za pomocą przełącznika -directory zamiast przełącznika -file.
gci -directory
PowerShell list only directories krótszy skrypt:
Skrypt możemy uprościć za pomocą przełącznika -di. Jest on dostępny, ponieważ wystarczy bez żadnych niejasności zidentyfikować przełącznik -directory. Użyj następującego skryptu, aby wyświetlić listę tylko katalogów w katalogu.
gci -di
To da użytkownikowi następujące wyjście.
PowerShell listuje tylko pliki we wszystkich folderach lub katalogach:
Teraz, gdy zobaczyliśmy jak listować tylko pliki lub tylko foldery, wciąż nie dowiedzieliśmy się jak listować tylko pliki w katalogu. Możemy to zrobić za pomocą przełącznika -recurse. Skrypt jest podany poniżej.
gci -file -recurse
Jasno widać, że jest to świetny skrypt, aby dostać się tylko do plików w katalogu lub folderze.
PowerShell list only folders in all the folders or directories:
Możemy wypisać tylko pliki w katalogu, a także w kolejnych katalogach podrzędnych używając poniższego skryptu.
gci -di -recurse
PowerShell listuje pliki o rozszerzeniu:
Możemy wypisać tylko określony typ plików w katalogu, jeśli chcemy. Możemy wylistować tylko pliki PDF w katalogu używając poniższego skryptu.
gci -file *.pdf
PowerShell listuje pliki o rozszerzeniu rekurencyjnie:
Możemy przenieść listowanie plików na nowy poziom poprzez rekurencyjne listowanie tylko plików o danym rozszerzeniu. Poniższy przykład właśnie to demonstruje.
gci -file -r *.pdf
Zauważ, że używamy przełącznika -r zamiast przełącznika -recurse, ponieważ zmniejsza to ilość wpisywania, które trzeba wykonać.
PowerShell listuje pliki o rozszerzeniu rekurencyjnie z głębokością:
Możemy wypisać wszystkie pliki w katalogu i kolejnych podkatalogach używając przełącznika -recurse. Możemy również zawęzić wyszukiwanie używając rozszerzenia pliku. Ale co jeśli nie chcemy szukać w folderach, które są głębiej niż 2 podkatalogi. Możemy użyć przełącznika -depth. Poniższy skrypt to wykorzystuje.
gci -file -d 1 -r *.pdf
Powyższy skrypt wykona get-childitem typu files, pobierze do katalogów podrzędnych 1, zrobi to rekurencyjnie i na koniec zapewni, że pobierze tylko pdfy.
Verdict:
W tym poście, dowiedzieliśmy się o PowerShell List all files in a Directory. Zrobiliśmy to używając alias get-childitem o nazwie gci. Gci w połączeniu z przełącznikiem -file robi to, czego potrzebujemy. Pobraliśmy również pliki o określonym rozszerzeniu. Pobraliśmy również pliki o określonym rozszerzeniu rekurencyjnie, a także do ograniczonej głębokości.
Jeśli chcesz więcej niesamowitych postów, bądź na bieżąco z TecKangaroo.