여러 대의 원격에 위치한 컴퓨터에 접속하여 명령어를 수행하고자 할 때 -ComputerName pc1,pc2,pc3를 사용한다.그런데 이렇게 할 때 pc1,pc2,pc3로 순차적으로 처리되지 않는다.
만약, 컴퓨터 이름을 순처적으로 처리하고자 하면 ForEach-Object를 사용하면 된다.
1. 원격 컴퓨터 이름을 확인하는 일반적인 방법(비순차적 처리)
1) 컴퓨터 이름 직접 입력하기
Invoke-Command -cn “pc1″,”pc2″,”pc3” {hostname}
2) 컴퓨터 이름 목록 파일 불러 오기
Invoke-Command -cn (Get-Content c:\computers.txt) {hostname}
2. 원격 컴퓨터 이름을 순차적으로 가져와서 처리하기
1) 컴퓨터 이름 직접 입력하기
“pc1″,”pc2″,”pc3” | Foreach-Object { Invoke-Command -cn $_ {hostname} }
2) 컴퓨터 이름 목록 파일 불러 오기
Get-Content c:\servers.txt | Foreach-Object { Invoke-Command -cn $_ {hostname} }