Powershell Get-Content 및 ForEach를 예제와 함께 사용하는 방법

2021년 6월 17일 16866 견해 PowerShell 시도 캐치 예제

이 S 영역에서는 PowerShell Get-Content를 ForEach 루프와 결합하는 방법을 알려줍니다. Get-Content를 사용하여 텍스트 파일의 내용을 나열한 다음 ForEach 문을 사용하여 텍스트 파일의 내용을 반복할 수 있습니다.





PowerShell ForEach에는 3가지 변형이 있습니다. ForEach 문과 ForEach 메서드가 있습니다.
또한 ForEach-Object Cmdlet이 있습니다.



이 가이드는 Get-Content 명령(구문, 매개변수 및 몇 가지 예)을 설명하는 것으로 시작합니다.

그런 다음 가이드의 나머지 부분에서 PowerShell ForEach 및 Get-Content의 3가지 변형을 각각 사용하는 방법을 배웁니다. ForEach의 각 변형에 대해 구문에 대해 설명하겠습니다.



마지막으로 PowerShell ForEach 변형 및 Get-Content를 사용하는 방법에 대한 여러 예를 보여 드리겠습니다.



게시물 주제 찾아보기

Get-Content 명령: 구문, 매개변수, 예

Get-Content 명령: 구문, 매개변수, 예

소개에서 언급했듯이 PowerShell ForEach를 사용하여 파일 내용을 반복하려면 먼저 텍스트 파일의 내용을 PowerShell로 가져와야 합니다.



Get-Content Cmdlet은 텍스트 파일의 내용을 PowerShell로 나열하거나 가져오는 데 사용됩니다.



이 섹션에서는 Get-Content의 구문과 매개변수를 살펴보겠습니다. 몇 가지 예를 들어 섹션을 마치겠습니다.

Get-Content 명령의 구문 및 매개변수

Get-Content 명령의 단순화된 구문은…

Dropbox를 오프라인에서 사용 가능
|_+_|

Get-Content에는 훨씬 더 많은 매개변수가 있습니다. 일반적으로 사용되는 매개변수를 지정했습니다.

사용 - 매개변수를 사용하여 텍스트 파일의 전체 경로()를 지정합니다. 텍스트 파일(.txt)의 확장자를 포함해야 합니다.

그만큼 매개변수는 위치 0에 있으므로 지정할 필요가 없습니다. Get-Content 직후에 값을 입력하면 됩니다. PowerShell 매개변수에 대해 자세히 알아보려면 가이드 – PowerShell 매개변수 매개변수 속성을 읽으십시오.

Get-Content 명령 예제

아래 스크린샷은 서버 목록입니다. 텍스트 파일의 내용을 PowerShell로 가져오기 위해 아래 명령을 실행합니다…

|_+_|

이 명령은 텍스트 파일에 서버 목록을 표시합니다.

Get-Content와 함께 PowerShell ForEach 문을 사용하는 방법

Get-Content와 함께 PowerShell ForEach 루프를 사용하는 방법

이 섹션에서는 결과를 파이프하는 방법을 배웁니다. 콘텐츠 가져오기 ~ 안으로 각각 고리. 그런 다음 내에서 각각 루프 블록, 특정 작업을 수행합니다.

이 섹션은 PowerShell ForEach 루프의 구문에 대해 설명하는 것으로 시작합니다.

PowerShell ForEach 문의 구문

PowerShell ForEach 문은 입력 개체 컬렉션의 각 항목에 대해 작업을 수행합니다. 이 가이드의 목적을 위해 텍스트 파일의 항목에 대해 작업이 수행됩니다.

ForEach 문의 구문은 다음과 같습니다.

|_+_|

예상대로 구문은 'ForEach'로 시작됩니다. 그런 다음 대괄호 '()'가 옵니다. 마지막으로 '{}' 블록.

이 가이드의 첫 번째 섹션에서 텍스트 파일의 내용을 가져오는 방법에 대한 예를 제공했습니다. 콘텐츠 가져오기 . 다음은 명령입니다…

|_+_|

이것을 ForEach 문 구문에 포함하면 ForEach 문은 아래와 같이 업데이트됩니다.

|_+_|

업데이트된 ForEach 문 구문에서 $컬렉션 변수 콘텐츠 가져오기 D:PS-TutorialS ZonesS Zones-Servers.txt 명령.

또한이 명령을 저장할 수 있습니다. $컬렉션 변하기 쉬운…

|_+_|

그런 다음 ForEach 문 구문의 단순화된 버전을 사용할 수 있습니다.

|_+_|

이 강력한 PS 문에 대해 자세히 알아보려면 PowerShell ForEach: Syntax, Parameters, Examples 를 클릭하십시오.

이 섹션의 나머지 하위 섹션에서 더 많은 예제를 제공합니다.

ForEach 문으로 텍스트 파일을 반복하는 방법

이 하위 섹션에서는 ForEach 문의 명령 블록에 몇 가지 명령을 추가합니다. 다음은 업데이트된 명령입니다.

|_+_|

PowerShell ISE에서 스크립트를 실행하면 텍스트 파일의 내용이 표시됩니다.

스크립트의 첫 번째 줄에서 Get-Content를 사용하여 텍스트 파일의 내용을 PowerShell로 가져왔습니다. 그런 다음 PowerShell ForEach 문을 사용하여 콘텐츠를 반복하고 write-host $item 명령으로 콘텐츠를 나열했습니다.

PowerShell Get-ChildItem, ForEach 루프 및 Get-Content를 결합하는 방법

폴더에 여러 텍스트 파일이 있는 경우 먼저 텍스트 파일의 전체 경로를 가져와야 합니다. 텍스트 파일의 전체 경로를 얻으려면 Get-ChildItem 명령이 필요합니다.

이를 설명하기 위해 폴더에 두 개의 텍스트 파일을 만들었습니다. 아래 스크린샷을 참조하십시오…

PowerShell Get-ChildItem, ForEach 루프 및 Get-Content를 결합하는 방법

eelier에 대해 언급했듯이 첫 번째 단계는 폴더에 있는 모든 텍스트 파일의 경로를 가져오는 것입니다. 이 작업을 수행하는 명령은 다음과 같습니다.

|_+_|

이 명령은 텍스트 파일의 전체 경로를 나열합니다…

그러나 폴더에 다른 항목(예: 하위 폴더 및 기타 유형의 파일)이 있는 경우 텍스트 파일만 반환하도록 명령을 개선해야 합니다…

|_+_| 후속 명령을 단축하기 위해 명령 결과를 변수에 저장했습니다.

이제 폴더의 모든 텍스트 파일에 대한 경로가 있으므로 다음 단계는 Get-Content를 사용하여 각 텍스트 파일의 내용을 나열하는 것입니다. 그러나 텍스트 파일이 두 개 이상 있으므로 ForEach 문을 사용해야 합니다.

|_+_|

PowerShell ISE의 ​​스크립트 결과는 다음과 같습니다.

PowerShell Get-ChildItem, ForEach 루프 및 Get-Content를 결합하는 방법

텍스트 파일의 내용으로 폴더를 만드는 방법

이 하위 섹션에서는 텍스트 파일의 내용으로 폴더를 만드는 방법을 배웁니다.

이를 설명하기 위해 이름이 있는 텍스트 파일이 있습니다.

Get-Content를 사용하여 텍스트 파일의 내용을 PowerShell로 가져옵니다. 그런 다음 ForEach 문 블록을 사용하여 텍스트 파일의 내용을 반복합니다.

마지막으로 ForEach 문 블록 내에서 감사 텍스트 파일의 내용으로 폴더를 만드는 명령입니다.

하지만 지금까지 했던 것처럼 명령어를 분리하지 않고 모든 명령어를 결합해 보겠습니다. 다음은 스크립트입니다...

|_+_|

이 명령에서는 Windows 명령 프롬프트 명령을 사용했습니다. CD 그리고 mkdir . 다음은 명령의 PowerShell 버전입니다...

삼성 카메라 s7 실패
|_+_|

다음은 PoweShell ISE의 ​​결과입니다.

또는 생성된 폴더에 대한 정보를 표시하지 않으려면 새로운 물품 명령 Null이 아님 .

이제 스크립트가 다음과 같이 보일 것입니다...

|_+_|

Get-Content 및 ForEach 문을 사용하여 텍스트 파일의 내용을 분할한 다음 결합하는 방법

이 글을 검색하던 중 이런 사실을 알게 되었어요. stackoverflow.com 의문. 질문을 한 사람에게는 다음 문자열이 포함된 텍스트 파일이 있습니다.

|_+_|

그러나 사용자는 문자열을 다음과 같이 수정하려고 합니다.

|_+_|

이 상황을 재현하기 위해 원본 문자열로 텍스트 파일을 만들었습니다. 그런 다음 필요한 결과를 얻을 수 있는 짧은 스크립트를 만들었습니다.

여기 스크립트가 있습니다.

|_+_|

첫 번째 줄과 두 번째 줄은 비교적 간단합니다. 1행에서 텍스트 파일 경로를 변수에 저장했습니다.

그런 다음 2 행에서 사용했습니다. 콘텐츠 가져오기 텍스트 파일의 내용을 PowerShell로 가져오고 결과를 다른 변수에 저장합니다.

마지막으로 3, 4, 5행에서 결과를 사용했습니다. 콘텐츠 가져오기 PowerShell ForEach 문의 명령. ForEach 문의 결과를 다른 변수에 저장했습니다.

ForEach 문에서 가장 중요한 것은 명령 블록에 있는 내용입니다...

|_+_|

명령의 첫 번째 부분은 PowerShell 분할 방법을 사용하여 텍스트 파일의 내용을 나눕니다. 다음은 명령입니다…

|_+_|

이 명령은 텍스트 파일의 문자열을 | 캐릭터. 이에 대한 이해를 돕기 위해 텍스트 파일의 원본 문자열이 있습니다.

|_+_|

split 명령의 결과는 다음과 같은 개별 문자열을 생성합니다.

|_+_|

PowerShell split이 이와 같은 개별 문자열을 생성할 때 각 항목은 0(영)부터 시작하는 위치 번호로 표시됩니다. 따라서 첫 번째 문자열에 액세스할 수 있습니다. 80055555 두 번째는 [0], 두 번째는 [1] 등입니다.

명령의 다음 부분을 설명하기 전에 달성하고자 하는 출력을 살펴보겠습니다. 여기있어…

|_+_|

PowerShell Split으로 이 출력을 중단한다면, 우리는 이것을 달성할 것입니다…

|_+_|

이것을 원본 문자열을 분할할 때의 결과와 비교하면 원본 텍스트 파일( DCDOCS )은 이제 위치 2에 있습니다. 다른 모든 하위 문자열은 원래 위치를 유지했습니다.

이것은 명령의 두 번째 비트의 작업이 표시된 위치입니다.

출력 시작 실패 obs 수정
|_+_|

이 명령은 단순히…

|_+_| 설명을 위해 부분 문자열을 구분하기 위해 쉼표(,)를 포함했습니다. 명령에는 쉼표가 포함되지 않습니다.

지금까지 이 명령에 대해 설명했습니다.

|_+_|

여기까지…

|_+_|

마지막 비트는 PowerShell 조인 연산자를 사용하여 이 명령으로 생성된 새 문자열 사이에 원래 문자 |를 삽입합니다.

|_+_|

지난 몇 단락에서 이 스크립트의 4행에 대해 설명했습니다.

Microsoft 계정 잠금 해제 방법
|_+_|

마지막으로 6번째 줄에서 저장한 새 문자열의 출력을 파이프했습니다. 새로운 파일 변수로 세트 콘텐츠 . 세트 콘텐츠 원본 파일을 새 문자열로 덮어씁니다.

이것은 Get-Content를 PowerShell ForEach 문과 결합하는 방법을 보여주는 훌륭한 예입니다!

Get-Content와 함께 PowerShell ForEach 메서드를 사용하는 방법

Get-Content와 함께 PowerShell ForEach 메서드를 사용하는 방법

ForEach 메서드는 PowerShell 버전 4에서 도입되었습니다. 이 메서드는 PowerShell 스크립트 개발자에게 텍스트 파일의 내용을 반복하는 또 다른 방법을 제공합니다.

이 섹션에서는 여러 예제와 함께 Get-Content와 함께 ForEach 메서드를 사용하는 방법을 배웁니다.

이 섹션은 ForEach 메서드의 구문으로 시작합니다.

PowerShell ForEach 메서드의 구문

PowerShell ForEach 메서드의 구문은…

|_+_|

개체의 ForEach 메서드에 액세스하는 것은 다른 PowerShell 메서드에 액세스하는 것과 유사합니다. 유일한 차이점은 ForEach 메서드가 () 블록 내에 {} 블록을 포함한다는 것입니다.

PowerShell Get-ChildItem, ForEach 메서드 및 Get-Content를 결합하는 방법

이 가이드의 ForEach 문 섹션에서 아래 스크립트를 공유했습니다.

|_+_|

사용된 스크립트 Get-Child 항목 이 폴더에 있는 텍스트 파일의 전체 경로를 반환하려면…

PowerShell Get-ChildItem, ForEach 메서드 및 Get-Content를 결합하는 방법

다음은 ForEach 메서드에 해당하는 스크립트입니다...

|_+_|

ForEach 메서드를 사용하여 텍스트 파일의 내용으로 폴더를 만드는 방법

마지막 하위 섹션의 예와 유사하게 이 가이드의 ForEach 문 섹션에서 아래 스크립트를 사용했습니다…

|_+_|

스크립트는 Get-Content 및 ForEach 문을 사용하여 아래 스크린샷의 텍스트 파일 내용을 사용하여 폴더를 생성했습니다.

명령을 사용하는 ForEach 문과 달리…

|_+_|

PowerShell ForEach 메서드는 다음과 같이 Get-Content의 결과에서 ForEach 메서드를 호출합니다.

|_+_|

그런 다음 () 블록 내에 {} 블록을 삽입하고 새로운 물품 명령. 그러나 사용하는 대신 $파일명 변수, 이번에는 $_ 자동 변수를 사용합니다.

|_+_|

스크립트의 최종 ForEach 메서드 버전은 다음과 같습니다.

|_+_|

이번에는 PowerShell ISE 대신 PowerShell에서 명령을 실행하고 싶습니다. 따라서 전체 스크립트를 한 줄로 작성하겠습니다...

|_+_|

다음은 PowerShell의 명령과 생성된 폴더입니다. 폴더 이름이 있는 텍스트 파일의 스크린샷도 포함했습니다...

ForEach 메서드를 사용하여 텍스트 파일의 내용으로 폴더를 만드는 방법

Get-Content 및 ForEach 메서드를 사용하여 텍스트 파일의 내용을 분할한 다음 결합하는 방법

이 가이드의 ForEach 문 섹션에서 다음과 같은 예를 들었습니다. stackoverflow.com 의문. 질문한 사람은 텍스트 파일에서 다음 문자열을 수정하려고 합니다...

|_+_|

이에…

|_+_|

문제를 해결하기 위해 Get-Content 및 PowerShell ForEach 문을 사용하는 이 스크립트를 만들었습니다.

|_+_|

가이드의 이 섹션에서는 사용 방법에 대해 설명합니다. 콘텐츠 가져오기 및 ForEach 메서드, 여기에 ForEach 메서드와 동등한 스크립트가 있습니다…

|_+_|

수정된 내용은 이 수정된 버전에서 ForEach 문을 ForEach 메서드로 대체했다는 점을 제외하고 동일합니다.

Get-Content와 함께 PowerShell ForEach-Object Cmdlet을 사용하는 방법

Get-Content와 함께 PowerShell ForEach-Object Cmdlet을 사용하는 방법

이 마지막 섹션에서는 처음 두 섹션에서 이미 제공한 몇 가지 예를 반복합니다.

그러나 이 섹션에서는 ForEach 문 및/또는 ForEach 메서드를 ForEach-Object Cmdlet으로 교체합니다.

이 섹션은 ForEach-Object Cmdlet의 구문으로 시작합니다.

ForEach-Object Cmdlet의 구문

ForEach-Object에는 두 가지 구문이 있습니다. 다음은 단순화된 버전입니다.

|_+_| |_+_|

ForEach-Object의 구문은 복잡해 보일 수 있습니다. 그러나 사용하기가 매우 쉽습니다. 이 가이드에서는 다음 사항에 중점을 둘 것입니다. 입력 개체 매개변수.

ForEach-Object에 입력을 제공하는 매개변수입니다. 게다가, 입력 개체 파이프라인을 통해 보낼 수도 있습니다…

|_+_|

ForEach-Object Cmdlet을 사용하여 텍스트 파일의 내용으로 폴더를 만드는 방법

이 가이드의 첫 번째 및 두 번째 섹션에서 다음 스크립트를 만들었습니다.

|_+_| |_+_|

첫 번째 스크립트는 Get-Content ForEach 문을 사용하여 아래 스크린샷의 텍스트 파일 내용을 사용하여 폴더를 만듭니다...

또한 두 번째 스크립트는 Get-Content ForEach 메서드를 사용하여 동일한 작업을 수행합니다.

ForEach Statement나 ForEach Method 대신 ForEach-Object Cmdlet을 사용하고자 한다면 아래와 같이 스크립트가 수정될 것입니다…

|_+_|

Get-Content 및 ForEach-Object Cmdlet을 사용하여 텍스트 파일의 내용을 분할한 다음 결합하는 방법

ForEach 문 및 ForEach 메서드 섹션에서 이 문제를 해결하기 위해 다음 스크립트를 만들었습니다. stackoverflow.com 의문.

|_+_| |_+_|

다음은 동일한 스크립트의 ForEach-Object Cmdlet 버전입니다.

|_+_|

PowerShell Get-Content 및 ForEach 작업: 최종 생각

PowerShell Get-Content 및 ForEach 작업: 최종 생각

이 가이드에서 공유하는 주제는 특히 PowerShell ForEach의 3가지 변형을 다루기 때문에 혼란스러울 수 있습니다. 이해를 쉽게 하기 위해 이 기사에서 공유하는 개념을 요약한 표가 있습니다.

의문ForEach 문ForEach 메서드ForEach-개체 cmdlet
Get-Content에서 입력 수락
Get-Content의 입력을 어떻게 수락합니까?파이프라인 | 또는 ForEach 문 조건 블록 내PowerShell 메서드 .()파이프라인 | 또는 통해 입력 개체 매개변수
Get-Content의 입력을 어떻게 변환합니까?컬렉션의 각 개체를 나타내는 시간 변수를 만듭니다.PowerShell 자동 파이프라인 변수 $_를 사용하여 컬렉션의 각 개체를 나타냅니다.PowerShell 자동 파이프라인 변수 $_를 사용하여 컬렉션의 각 개체를 나타냅니다.
샘플 스크립트?ForEach(Get-Content D:PS-Tutoriallist.txt의 $filename) Out-Null
(Get-Content D:PS-Tutoriallist.txt).ForEach(
새 항목 -경로 D:PS-Tutorial -이름 $_ -ItemType 디렉터리
)
콘텐츠 가져오기 D:PS-Tutoriallist.txt | ForEach-객체
새 항목 -경로 D:PS-Tutorial -이름 $_ -ItemType 디렉터리

그것이 전부입니다. PowerShell Get-Content 및 ForEach를 사용하는 방법에 대한 업데이트된 가이드입니다! 도움이 되셨나요?

도움이 되셨다면 투표 부탁드립니다 이 게시물이 도움이 되었습니까?

또는 이 페이지 끝에 있는 답장 남기기 양식을 사용하여 질문하거나 의견을 남기거나 더 많은 피드백을 제공할 수 있습니다.

마지막으로 더 많은 PowerShell 기술 S 영역을 보려면 Windows PowerShell 방법 가이드 페이지를 방문하세요. Work from Home 페이지가 매우 도움이 될 수도 있습니다.

넷플릭스 해킹 변경 이메일

참조 및 추가 읽을거리

  1. ForEach-객체
  2. 콘텐츠 가져오기
  3. about_Foreach