5
मैं एक टेक्स्ट फ़ाइल में ऑफ़लाइन कंप्यूटर रिकॉर्ड करने का प्रयास कर रहा हूं ताकि मैं उन्हें बाद में फिर से चला सकूं। ऐसा प्रतीत नहीं होता है कि इसे रिकॉर्ड किया जा रहा है या पकड़ा गया है।पावरहेल परीक्षण कनेक्शन के साथ प्रयास/पकड़
function Get-ComputerNameChange {
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True,ValueFromPipeline=$True,ValueFromPipelinebyPropertyName=$True)]
[string[]]$computername,
[string]$logfile = 'C:\PowerShell\offline.txt'
)
PROCESS {
Foreach($computer in $computername) {
$continue = $true
try { Test-Connection -computername $computer -Quiet -Count 1 -ErrorAction stop
} catch [System.Net.NetworkInformation.PingException]
{
$continue = $false
$computer | Out-File $logfile
}
}
if($continue){
Get-EventLog -LogName System -ComputerName $computer | Where-Object {$_.EventID -eq 6011} |
select machinename, Time, EventID, Message }}}
हाँ कि काम किया। क्या आप जानते हैं कि यह मेरे टेक्स्ट फ़ाइल में पिछले कंप्यूटर नाम में केवल पाइप क्यों है? मैं सामग्री प्राप्त करने की कोशिश कर रहा हूं "\\ test \ c $ \ powershell \ computers.txt" | get-computernameChange – MattMoo
@ user3620584 आप कैसे जानते हैं कि यह केवल अंतिम में पाइपिंग है? – briantist
एक परीक्षण के रूप में मैंने 3 कंप्यूटर नामों में रखा है जो मौजूद नहीं हैं और यह केवल लॉग फ़ाइल में अंतिम सूची सूचीबद्ध करता है। – MattMoo