PowerShell에서 파일의 전체 경로 가져오기
-
Get-ChildItem
을 사용하여 PowerShell에서 파일의 전체 경로 가져오기 -
Select-Object
를 사용하여 PowerShell에서 파일의 전체 경로 가져오기 -
Format-Table
을 사용하여 PowerShell에서 파일의 전체 경로 가져오기 -
foreach
루프를 사용하여 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
, dir
및 gci
가 있습니다. 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