Lista filer i en katalog med PowerShell

List Files Directory With Powershell



PowerShell är en fritt tillgänglig, öppen källkod för Microsoft automatisering och skriptplattform. Målet är att hjälpa sina användare att skapa effektiva verktyg och skript för att hjälpa dem att utföra sina jobb mer effektivt. Många användbara funktioner och kommandon är tillgängliga i PowerShell, som är kända som cmdlets . Dessa cmdlets används för att utföra en specifik operation, till exempel att pinga en fjärrdator, läsa en viss fil, etc.

När du vill veta vilka filer som finns på ditt system måste du säkert lista dem. Många användare kanske tror att det är mycket bekvämare att utforska filer i det grafiska användargränssnittet (GUI) än att köra med kommandoraden eller PowerShell. Men det är inte sanningen. Att lista filer är en operation som PowerShell gör enkelt. Om du har några problem lista filer i en katalog med PowerShell , då är det här inlägget här för att rädda dig! PowerShell använder Get-ChildItem kommando för att lista filer som finns i en katalog. Låt oss veta mer om detta prisvärda kommando.







Vad är Get-ChildItem?

I PowerShell, Get-ChildItem utför samma funktion som till dig i kommandotolken i Windows. Denna cmdlet hämtar data från en specifik plats. Det listar också objekt eller objekt från en eller flera angivna filplatser. Föremålen kommer att få sina barnartiklar från behållaren. Register och filer kallas underordnade objekt i undermapparna till PowerShell. Som dir / s , om du vill hämta data från barnbehållarna måste du använda -Recurse parameter.



Ett filsystem kan vara allt från ett certifikatlager till en katalog med delade sökvägar i registret eller lokalt. När du använder Get-ChildItem på ett system listar det filer, kataloger och underkataloger. I det andra fallet, när du använder den i en katalog, returnerar det här kommandot en lista över filer och underkataloger som ligger under den. Get-ChildItem visar inte tomma kataloger när -Recurse eller -Djup alternativ används i ett Get-ChildItem-kommando.



Operatörer som används med Get-ChildItem-kommandot i PowerShell

Här följer operatörerna som används med Get-ChildItem-cmdleten:





  • , för OR
  • + för OCH
  • ! för inte

Attribut för kommandot Get-ChildItem i PowerShell

Här är några av attributen för cmdleten Get-ChildItem, som används för att lista filer eller mappar enligt angivna attribut.

  • länk ( de )
  • systemet ( s )
  • katalog ( d )
  • dold ( h )
  • skrivskyddad ( r )
  • arkiv ( till )

Låt oss titta på några exempel på att lista filer i PowerShell.



Exempel 1: Lista underordnade objekt i en specifik katalog med parametern -Path

Om du vill lista filer och kataloger i en specifik katalog använder du -Väg parameter i Get-ChildItem kommando. Det här alternativet hjälper PowerShell att lista alla underordnade objekt i den angivna katalogen. De -Väg parameter används också för att ställa in sökvägarna för en eller flera platser för filer. Om du inte uttryckligen nämner katalogsökvägen är den aktuella arbetskatalogen standardplatsen.

I exemplet nedan visar PowerShell alla underordnade filer och mappar som finns i E: vbox katalog:

> Get-ChildItem -VägE: vbox

Om du inte lägger till -Väg parameter, den Get-ChildItem cmdlet tar den första parametern som katalogvägen. Utförandet av detta kommando visar dig samma utdata:

> Get-ChildItemE: vbox

Exempel 2: Lista underordnade objekt och deras underkataloger med parametern -Recurse

De -Recurse är parametern som söker efter filer och mappar i underkatalogerna för den angivna sökvägen. Om du vill lagra all denna information använder du en PowerShell -behållare, sparar information som namn, längd och fullständigt namn på underordnade objekt. Efter det, Get-ChildItem kommandot kommer att hämta all denna information från behållaren och lista filer, kataloger och underkatalogernas underkataloger.

> Get-ChildItem -Recurse 'E: programvara' | Var { ! $ _ .PSIsContainer} | Väljnamn,Fullständiga namn,Längd

Du kan hämta informationen enligt dina krav. Här har vi uteslutit Längd av filerna och katalogerna:

> Get-ChildItem -Recurse 'E: vbox' | Var { $ _ .PSIsContainer} | Väljnamn,Fullständiga namn

Exempel 3: Lista filer i en katalog med parametern -Exclude

De -Utesluta är en strängparameter som utesluter kataloger och filer med något specifikt tillägg. Det anges efter att katalogen sökväg har lagts till. Jokertecken används också för detta ändamål, t.ex. *.Text används i exemplet nedan:

> Get-ChildItem -Recurse 'E: UWT4' -Utesluta *.Text| Var {! $ _ .PSIsContainer} | Väljnamn,Fullständiga namn

Genomförandet av detta kommando listar alla kataloger och filer förutom de filer som har .Text förlängning.

Exempel 4: Lista filer i en katalog med parametern -Include

De -Omfatta är en strängparameter som används i Get-ChildItem cmdlet för att lista specifika filer och mappar. Du kan ange mer än ett tillägg med -Omfatta alternativ, separerade med ett kommatecken. Till exempel kommer vi att inkludera alla filer som har .Text förlängning i C: Windows System32 katalog:

> Get-ChildItem -VägC: Windows System32 * -Omfatta *.Text

Exempel 5: Lista filer i en katalog med parametern -Sänkande

Medan lista ut filerna i PowerShell , kan du sortera dem baserat på olika attribut, till exempel filnamn eller längden på filerna.

I kommandot nedan ges Get-ChildItem kommer att skriva ut listan över filer och kataloger sorterade fallande efter deras längd:

> Get-ChildItem -VägE: UWT4-Recurse -Fil | sorteralängd-Nedåtgående

Exempel 6: Lista filer i en katalog med parametern -Depth

Om du vill kontrollera katalogernas rekursion använder du -Djup parameter i din Get-ChildItem kommando. Som standard när du kör Get-ChildItem cmdlet, listar alla underordnade objekt med sina underkataloger. Men när du lägger till parametern -Depth kan du lista den exakta nivån på innehållet i underkataloger.

Till exempel, om du anger -Djup 2 i kommandot Get-ChildItem visar cmdleten underkataloger på första nivån med underkataloger på andra nivån.

> Get-ChildItem -VägE: vbox-Recurse -Djup 2

Exempel 7: Räkna antalet underordnade objekt i en katalog

När vi sparar fler och fler filer på våra system är det lätt att tappa koll på hur många filer som finns i varje mapp. Kommandot Get-ChildItem ger också en lösning för det.

Vi visar hur cmdleten Get-ChildItem mäter objektantalet från det angivna E: vbox katalog.

> (Get-ChildItem -Recurse -VägE: vbox | Measure-Object).Räkna

Slutsats

PowerShell använder Get-ChildItem kommando för lista filer i en katalog . De till dig i kommandotolken i Windows och Get-ChildItem i PowerShell utför samma funktion. I den här artikeln har vi sammanställt exempel för att förstå listningsfiler i PowerShell. Dessa exempel inkluderar listning av filer och mappar från en specifik katalog, inklusive eller uteslutande av vissa specifika filer, sortering av fillistan eller kontroll av rekvision av katalogerna.