2014-04-09 1 views
0

나는 이런 종류의 물건에 익숙하지 않고 해결 방법을 모르는 문제에 부딪치고 있습니다. 기본적으로 test.txt를보고 컴퓨터 이름 목록을 사용하고 각각에 배치 파일을 실행합니다. 내가 원격 컴퓨터 이름을 연결하는 방법을 알아낼 수 있다면 나는 갈 것이지만 나는 그 방법을 모른다. 나는 조금 연구했고 어떤 사람들은 % COMPUTERNAME^%를 ^를 사용하여 명령을 실행하는 컴퓨터 이름이 아닌 원격 컴퓨터 이름을 반환 할 수 있다고 말한 것을 보았습니다. 나는 그것이 작동하지 않는 실행 파일의 경로에 그것을 사용하려고 그냥 실제로 "% 컴퓨터 이름 %"를 사용하려고하면, 그러나psexec 원격 컴퓨터 이름

psexec @c:\test.txt cmd /c echo %COMPUTERNAME^% 

: 이것은 내가 뭔가를 할 경우 작동 이름을 해석하는 대신 나는 컴퓨터 이름의 긴 목록이 배치 파일을 실행하기 위해 노력하고있어

psexec @c:\test.txt elevate \\%COMPUTERNAME%\c$\IE10fix.bat 

, 그리고 내가 사용하고 있는데 왜 로컬 관리자로 실행해야합니다 : 다음 명령은 내가 사용하는 것을 시도하고있다 올리다. 누구나 원격 컴퓨터 이름 문제에 대한 해결책을 제공 할 수 있거나 다른 접근 방법을 함께 제공하면 매우 감사 할 것입니다.

+0

왜 각 명령에서 컴퓨터 이름을 대체해야한다고 생각하십니까? 배치 파일이 각 대상 컴퓨터에 있으면 로컬 경로 (예 : 'psexec @c : \ test.txt C : \ IE10fix.bat'를 올리십시오. 단일 서버에있는 경우 서버 경로를 사용하십시오. 'psexec @c : \ test.txt \\ server \ c $ \ IE10fix.bat'를 올리십시오. –

+0

UNC 경로를 사용하려고하면 작동하지 않습니다. 나는 이것이 어딘가에 psexec의 한계라고 읽었다. 나는 그냥 방구했다. 로컬 경로를 사용하면 잘 작동합니다. 감사! – user3229528

답변

0

UNC 경로 실행 파일을 실행하려는 경우 로컬 계정을 사용하는 대신 네트워크 관리자 계정을 사용해야합니다. 또한 단지 바이 패스 제한 시스템 계정을 사용할 수 있지만, 지금까지의 경로 당신이 단지 수

+0

의미가 있지만이 특정 작업에 로컬 관리자 계정을 사용해야하는 구체적인 이유가 있습니다. 그 정보를 가져 주셔서 감사합니다, 그것은 미래에 유용 할 것입니다. – user3229528

+0

c : \ test \ IE10fix.bat 폴더를 만들고이 폴더를 'everyone'에게 공유하십시오. 그런 다음 시도해보십시오 : 'psexec @c : \ test.txt \\ server \ test \ IE10fix.bat' –

0

로컬 계정이 네트워크 리소스에 대한 권한이 없기 때문에

psexec @c:\test.txt -u domain\username \\server\c$\IE10fix.bat

이유 UNC 경로 실패 로컬 컴퓨터에 대처하는 대신 스크립트가 실행되는 위치를 가리킨 다음 거기에서 실행을 시도하십시오.

psexec에 @c : \ TEST.TXT -s "% ~ DP0IE10fix.bat"

이 텍스트에서 끌어와 (당신이 사용자에게 침묵 할 경우에 주로 사용) 시스템 계정으로 실행 한 후 실행중인 배치 파일의 위치에서 IE10fix.bat를 실행합니다. 따라서이 명령을 실행하는 .bat와 같은 위치에 IE10fix.bat를 넣어야합니다.