วิธีการรีสตาร์ทอินเทอร์เฟซเครือข่ายเฉพาะโดย powershell


0

ฉันพยายามเริ่มต้นอินเทอร์เฟซเครือข่ายใหม่โดย PowerShell ด้วยที่อยู่ IP ที่เฉพาะเจาะจง ฉันทำงบต่อไปนี้:

$iface = Get-NetIPAddress | Where-Object -FilterScript { $_.IPAddress -like "10.212*" } | format-wide -Property InterfaceAlias

มีอินเทอร์เฟซที่มีรูปแบบกว้าง แต่ใช้ตัวแปรด้านล่างสิ่งที่ทำงานไม่ถูกต้อง

Restart-NetAdapter -Name $iface

มันเป็นวิธีที่ถูกต้องในการใช้ตัวแปรหรือไม่?

ใช้ powershell รุ่น 5

คำตอบ:


2

การจัดรูปแบบ cmdlets ส่งคืนสตริงซึ่งเป็นสิ่งที่ดีมากสำหรับมนุษย์ที่จะอ่าน แต่ไม่มีวัตถุจริงอีกต่อไป โดยเฉพาะอย่างยิ่งจะเพิ่มขึ้นบรรทัดใหม่หลายอย่างที่อาจจะมีความสับสนFormat-WideRestart-NetAdapter

วัตถุที่ผลิตโดยGet-NetIPAddressมีคุณสมบัติที่เราสามารถใช้ที่จะได้รับวัตถุอะแดปเตอร์เครือข่ายจากการInterfaceIndex จากนั้นวัตถุอะแดปเตอร์สามารถเข้าประปาGet-NetAdapterRestart-NetAdapter

Get-NetAdapter -InterfaceIndex (Get-NetIPAddress | ? {$_.IPAddress -like '10.212.*'}).InterfaceIndex | Restart-NetAdapter

นอกจากนี้โปรดทราบถึงนามแฝงของการWhere-Objectเข้า?- นี่คือนามแฝง PowerShell มาตรฐานที่สะดวกซึ่งคุณสามารถใช้หากคุณต้องการ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.