PowerShell에서 파일의 전체 경로 가져오기

Rohan Timalsina 2023년1월30일
  1. Get-ChildItem을 사용하여 PowerShell에서 파일의 전체 경로 가져오기
  2. Select-Object를 사용하여 PowerShell에서 파일의 전체 경로 가져오기
  3. Format-Table을 사용하여 PowerShell에서 파일의 전체 경로 가져오기
  4. foreach 루프를 사용하여 PowerShell에서 파일의 전체 경로 가져오기
PowerShell에서 파일의 전체 경로 가져오기

PowerShell에는 시스템의 파일을 관리하기 위한 다양한 cmdlet이 있습니다. PowerShell을 사용하여 파일을 생성, 복사, 이동, 이름 변경 및 삭제할 수 있습니다.

PowerShell에서 파일을 검색하고 파일의 존재를 확인할 수도 있습니다. 파일 경로는 시스템에서 파일의 위치를 ​​알려줍니다. 이 자습서에서는 PowerShell에서 파일의 전체 경로를 가져오는 다양한 방법을 소개합니다.

Get-ChildItem을 사용하여 PowerShell에서 파일의 전체 경로 가져오기

Get-ChildItem cmdlet은 지정된 위치에 있는 파일 및 디렉터리 목록을 표시합니다. -Recurse 매개변수를 사용하여 모든 파일과 디렉토리를 재귀적으로 나열할 수 있습니다.

또한 하위 디렉토리와 해당 파일을 보여줍니다. PowerShell에서 재귀 파일 검색에 유용합니다.

다음은 재귀 파일 검색의 예입니다.

Get-ChildItem -Path C:\New -Filter test.txt -Recurse

위의 명령은 C:\New 위치에서 test.txt 파일을 재귀적으로 검색합니다. 주어진 위치 내의 모든 디렉토리와 하위 디렉토리를 확인하고 발견되면 파일의 세부 정보를 표시합니다.

출력:

    Directory: C:\New\complex


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        12/16/2021   7:29 AM            198 test.txt

보시다시피 test.txt 파일은 C:\New\complex 디렉토리에 있습니다. 파일의 Path, Mode, LastWriteTime, Length, Name이 표시됩니다.

명령을 %{$_.FullName}으로 파이프하여 파일의 전체 경로를 가져올 수 있습니다.

Get-ChildItem -Path C:\New -Filter test.txt -Recurse | %{$_.FullName}

출력:

C:\New\complex\test.txt

-Filter 매개변수와 함께 *.txt를 사용하여 C:\New 위치에서 .txt 확장자를 가진 모든 파일을 가져올 수 있습니다.

Get-ChildItem -Path C:\New -Filter *.txt -Recurse | %{$_.FullName}

출력:

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

또는 이 명령을 사용하여 .txt 확장자를 가진 모든 파일과 지정된 위치의 해당 경로를 가져올 수 있습니다.

Get-ChildItem -Path C:\New -Recurse | where {$_.extension -eq ".txt"} | %{$_.FullName}

Select-Object를 사용하여 PowerShell에서 파일의 전체 경로 가져오기

비슷한 방법이 사용되지만 Get-ChildItem 명령과 함께 Select-Object cmdlet을 사용하여 PowerShell에서 파일의 전체 경로를 가져옵니다. Select-Object cmdlet은 개체 또는 개체 집합의 지정된 속성을 선택합니다.

Get-ChildItem -Path C:\New -Filter *.txt -Recurse | Select-Object -ExpandProperty FullName

출력:

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

Format-Table을 사용하여 PowerShell에서 파일의 전체 경로 가져오기

마찬가지로 Format-Table을 사용하여 PowerShell에서 파일의 전체 경로를 가져올 수 있습니다. Format-Table cmdlet은 개체의 선택한 속성을 사용하여 출력 형식을 테이블로 지정합니다.

Get-ChildItem -Path C:\pc -Filter car.png -Recurse | Format-Table FullName

출력:

FullName
--------
C:\pc\computing\task4\car.png

foreach 루프를 사용하여 PowerShell에서 파일의 전체 경로 가져오기

foreach 루프는 PowerShell에서 foreach 문으로도 알려져 있습니다. 배열, 개체, 문자열, 숫자 등의 컬렉션에서 일련의 값을 반복하기 위한 언어 구성입니다. foreach 루프 내에서 배열의 각 항목에 대해 하나 이상의 명령을 실행할 수 있습니다.

다음은 foreach 루프를 사용하여 PowerShell에서 파일의 전체 경로를 가져오는 방법입니다.

Get-ChildItem -path C:\New\*.txt -Recurse | foreach { "$_" }

출력:

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

위의 명령은 -Filter 매개변수와 함께 작동하지 않습니다. -Filter 매개 변수를 사용하기 위해 중간에 있는 Get-Item cmdlet으로 파이프할 수 있습니다.

Get-ChildItem -Path C:\New -Filter *.txt -Recurse | Get-Item | foreach { "$_" }

출력:

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

Get-ChildItem에는 기본 제공 별칭 ls, dirgci가 있습니다. Get-ChildItem cmdlet 대신 핸들을 사용하여 위의 모든 명령을 실행할 수 있습니다.

예를 들어:

gci -Path C:\New -Filter *.txt -Recurse | %{$_.FullName}

출력:

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

관련 문장 - PowerShell File