ฉันจะสคริปต์คำสั่งระยะไกลบนคอมพิวเตอร์ Windows เครื่องอื่นจากคอมพิวเตอร์ Windows ได้อย่างไร
เช่นบนเครือข่าย * nix- * nix ฉันสามารถทำได้ssh wu@otherbox foo
และหากมีการตั้งค่าคีย์อย่างถูกต้องfoo
ทำงานและลูกค้า ssh ส่งคืนรหัสส่งคืน
ฉันจะสคริปต์คำสั่งระยะไกลบนคอมพิวเตอร์ Windows เครื่องอื่นจากคอมพิวเตอร์ Windows ได้อย่างไร
เช่นบนเครือข่าย * nix- * nix ฉันสามารถทำได้ssh wu@otherbox foo
และหากมีการตั้งค่าคีย์อย่างถูกต้องfoo
ทำงานและลูกค้า ssh ส่งคืนรหัสส่งคืน
คำตอบ:
psexec - http://technet.microsoft.com/en-us/sysinternals/bb897553
PsExec เป็นการทดแทน telnet ที่มีน้ำหนักเบาซึ่งช่วยให้คุณสามารถดำเนินการกระบวนการในระบบอื่น ๆ พร้อมด้วยการโต้ตอบเต็มรูปแบบสำหรับแอปพลิเคชันคอนโซลโดยไม่ต้องติดตั้งซอฟต์แวร์ไคลเอ็นต์ด้วยตนเอง
ตัวเลือกอื่นคือการเขียน powershell หรือ vbscript (โดยใช้ WMI)
เครื่องมือบรรทัดคำสั่ง WMI เป็นตัวเลือกที่ดี:
wmic.exe /node:somecomputer process call create "c:\bin\uphclean\uphclean.exe -install"
คุณควรตรวจสอบยูทิลิตีPSExec
มีวิธีอื่นถ้าคุณกำลังมองหาวิธีการเขียนสคริปต์ ซึ่งสามารถทำได้ผ่านทาง PowerShell นอกเหนือจาก psexec และ wmic Remote powershell ใช้งานได้กับ Windows 7 และ Vista เท่านั้นและแน่นอนสำหรับ Server 2008
invoke-command -computername YourTarget01 -scriptblock {
$Object=get-something $Wibble
$Data1=$Object.method
}
ในการใช้สิ่งนี้จะต้องเปิด WinRM และกำหนดค่าบนเครื่องเป้าหมาย สามารถผลักสิ่งนี้ผ่าน GPO ดังนั้นคุณไม่จำเป็นต้องกำหนดค่าด้วยตนเองทุกที่ มีประโยชน์สำหรับการปรับใช้จำนวนมาก สำหรับการดำเนินการที่ซับซ้อนเป็นความคิดที่ดีที่จะสร้างวัตถุเซสชันเดียวดังนั้นคุณจะไม่หมุนวัตถุใหม่ทุกครั้งที่คุณกดปุ่มเครื่อง:
$Session=new-pssession -ComputerName YourTarget01
invoke-command -Session $Session -Scriptblock { }
โดยค่าเริ่มต้นข้อมูลประจำตัวของผู้เรียกเก็บแม้ว่าเครดิตอื่น ๆ ca จะระบุเป็นตัวเลือก