الأوامر عن بعد

كمبيوتر لتلقي الأوامر عن بعد




تكوين جهاز كمبيوتر لتلقي الأوامر عن بعد
Enable-PSRemoting


 تكوين جهاز كمبيوتر لتلقي الأوامر عن بعد بدون موجه 
Enable-PSRemoting -Force


السماح بالوصول عن بعد على العملاء
Enable-PSRemoting -SkipNetworkProfileCheck -Force
Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any


تشغيل برنامج نصي على خادم
Invoke-Command -FilePath c:\scripts\test.ps1 -ComputerName Server01


يستخدم الأمر معلمة فيليباث لتحديد البرنامج النصي الموجود على الكمبيوتر المحلي. يتم تشغيل البرنامج النصي على الكمبيوتر البعيد ويتم إرجاع النتائج إلى الكمبيوتر المحلي.
Invoke-Command -ComputerName server01 -Credential domain01\user01 -ScriptBlock {Get-Culture}



استجابة لذلك، يعرض ويندوز بويرشيل مربع حوار يطلب كلمة المرور وطريقة مصادقة لحساب User01. ثم يقوم بتشغيل الأمر على جهاز الكمبيوتر Server01 وإرجاع النتيجة.
$s = New-PSSession -ComputerName Server02 -Credential Domain01\User01
Invoke-Command -Session $s -ScriptBlock {Get-Culture}


 استخدام جلسة لتشغيل سلسلة من الأوامر التي تشارك البيانات
Invoke-Command -ComputerName Server02 -ScriptBlock {$p = Get-Process PowerShell}
Invoke-Command -ComputerName Server02 -ScriptBlock {$p.VirtualMemorySize}
 $s = New-PSSession -ComputerName Server02
Invoke-Command -Session $s -ScriptBlock {$p = Get-Process PowerShell}
Invoke-Command -Session $s -ScriptBlock {$p.VirtualMemorySize}


تشغيل أمر واحد على العديد من أجهزة الكمبيوتر
Invoke-Command -ComputerName Server01, Server02, TST-0143, localhost -ConfigurationName MySession.PowerShell -ScriptBlock {Get-EventLog "Windows PowerShell"}


الحصول على إصدار البرنامج المضيف على أجهزة كمبيوتر متعددة
$version = Invoke-Command -ComputerName (Get-Content Machines.txt) -ScriptBlock {(Get-Host).Version}


تشغيل مهمة خلفية على عدة أجهزة كمبيوتر عن بعد
$s = New-PSSession -ComputerName Server01, Server02
 Invoke-Command -Session $s -ScriptBlock {Get-EventLog system} -AsJob
$j = Get-Job
$j | Format-List -Property *


ضمين المتغيرات المحلية في أمر تشغيل على كمبيوتر بعيد
$MWFO_Log = "Microsoft-Windows-Forwarding/Operational"
 Invoke-Command -ComputerName Server01 -ScriptBlock {Get-EventLog -LogName $Using:MWFO_Log -Newest 10}


إخفاء اسم الكمبيوتر
Invoke-Command -ComputerName S1, S2 -ScriptBlock {Get-Process PowerShell}
Invoke-Command -ComputerName S1, S2 -ScriptBlock {Get-Process PowerShell} -HideComputerName


تشغيل برنامج نصي على كافة أجهزة الكمبيوتر المدرجة في ملف نصي
Invoke-Command -ComputerName (Get-Content Servers.txt) -FilePath C:\Scripts\Sample.ps1 -ArgumentList Process, Service


تشغيل أمر على كمبيوتر بعيد باستخدام أوري
$LiveCred = Get-Credential
 Invoke-Command -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.exchangelabs.com/PowerShell -Credential $LiveCred -Authentication Basic -ScriptBlock {Set-Mailbox Dan -DisplayName "Dan Park"}


إدارة إعادة توجيه أوري في أمر بعيد
$max = New-PSSessionOption -MaximumRedirection 1
Invoke-Command -ConnectionUri https://ps.exchangelabs.com/PowerShell -ScriptBlock {Get-Mailbox dan} -AllowRedirection -SessionOption $max


استخدام خيار جلسة عمل
$so = New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck
Invoke-Command -ComputerName server01 -UseSSL -ScriptBlock { Get-HotFix } -SessionOption $so -Credential server01\user01


الوصول إلى مشاركة شبكة في جلسة بعيدة
Enable-WSManCredSSP -Delegate Server02
 Connect-WSMan Server02
Set-Item WSMan:\Server02*\Service\Auth\CredSSP -Value $True
 $s = New-PSSession Server02
 Invoke-Command -Session $s -ScriptBlock {Get-Item \\Net03\Scripts\LogFiles.ps1} -Authentication CredSSP -Credential Domain01\Admin01


إنشاء جلسة عمل على كمبيوتر بعيد
$Server01 = New-PSSession -ComputerName Server01



إنشاء جلسات على أجهزة كمبيوتر متعددة
$s1, $s2, $s3 = New-PSSession -ComputerName Server01,Server02,Server03



إنشاء جلسة عمل باستخدام منفذ محدد
New-PSSession -ComputerName Server01 -Port 8081 -UseSSL -ConfigurationName E12



إنشاء جلسة استنادا إلى جلسة عمل موجودة
New-PSSession -Session $s -Credential Domain01\User01



نشاء جلسة ذات نطاق عام في نطاق مختلف
$global:s = New-PSSession -ComputerName Server1.Domain44.Corpnet.Fabrikam.com -Credential Domain01\Admin01


إنشاء جلسات لكثير من أجهزة الكمبيوتر
$rs = Get-Content C:\Test\Servers.txt | New-PSSession -ThrottleLimit 50


إنشاء جلسة عمل باستخدام عنوان أوري
$s = New-PSSession -URI http://Server01:91/NewSession -Credential Domain01\User01



تشغيل مهمة خلفية في مجموعة من الجلسات
$s = New-PSSession -ComputerName (Get-Content Servers.txt) -Credential Domain01\Admin01 -ThrottleLimit 16
Invoke-Command -Session $s -ScriptBlock {Get-Process PowerShell} -AsJob




نشاء جلسة لجهاز كمبيوتر باستخدام معرف موارد منتظم (أوري) الخاص به

New-PSSession -ConnectionURI https://management.exchangelabs.com/Management



الحصول على جلسات متصلة بالكمبيوتر المحلي
Get-PSSession -ComputerName "localhost"


الحصول على جلسات متصلة بجهاز كمبيوتر
Get-PSSession -ComputerName "Server02"


إنشاء دالة تقوم بحذف جميع الجلسات في الجلسة الحالية
Function EndPSS { Get-PSSession | Remove-PSSession }



Share
Disclaimer: Gambar, artikel ataupun video yang ada di web ini terkadang berasal dari berbagai sumber media lain. Hak Cipta sepenuhnya dipegang oleh sumber tersebut. Jika ada masalah terkait hal ini, Anda dapat menghubungi kami disini.

LATEST ARTICLES

Post a Comment