29

OS: ビスタエンタープライズ

ホーム ネットワークとオフィス ネットワークを切り替えると、常にネットワークへの接続に問題が発生します。ほとんどの場合、「ネットワークと共有センター」の診断サービスを使用する必要があり、ネットワーク アダプターのリセット オプションを使用すると問題が解決します。

これにはかなりの時間がかかります (3 ~ 4 分) ので、ネットワーク アダプターをリセットするために直接使用できるコマンドまたは PowerShell スクリプト/コマンドレットを探していました。ネットワーク間。ポインタはありますか?

4

13 に答える 13

27

これを行うには、PowerShell 内から WMI を使用できます。デバイス名にWirelessが含まれるネットワーク アダプタがあると仮定すると、一連のコマンドは次のようになります。

$adaptor = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$adaptor.Disable()
$adaptor.Enable()

これを Windows Vista で実行している場合は、PowerShellを Administrator として実行する必要がある場合があります。

于 2008-10-16T05:09:45.517 に答える
11

ジトラックスの答え:

netsh interface set interface "InterfaceName" DISABLED
netsh interface set interface "InterfaceName" ENABLED

私が探していたものの99%でした。ただし、彼が省略した情報の 1 つは、これらのコマンドは管理者として実行する必要があるということです。管理者として cmd.exe を実行して入力するか、バッチ ファイルに保存してから、そのファイルを右クリックし、コンテキスト メニューから [管理者として実行] を選択して、そのファイルを管理者として実行します。

于 2014-11-30T03:56:23.283 に答える
9

The Scripting Guys の記事「ネットワーク アダプタを有効または無効にするにはどうすればよいですか?」を参照してください。

tl/dr:

Restart-NetAdapter   -Name "Your Name Here"

を使用してリストを取得できます

Get-NetAdapter
于 2008-10-16T04:02:03.967 に答える
7

私のために働いたもの:

netsh interface show interface

私にとっては「Ethernet 2」だったインターフェイス名を表示するには、次のようにします。

netsh interface set interface "Ethernet 2" DISABLED
netsh interface set interface "Ethernet 2" ENABLED
于 2014-03-05T10:00:51.357 に答える
7

.BAT または .CMD ファイルでこれを試すこともできます。

ipconfig /release
ipconfig /renew
arp -d *
nbtstat -R
nbtstat -RR
ipconfig /flushdns
ipconfig /registerdns

これらのコマンドは、ネットワーク アダプターの「診断と修復」と同じことを行う必要がありますが、はるかに高速です。

これが役立つかどうか教えてください!JFV

于 2008-10-16T04:08:39.227 に答える
5

次のコマンドは私にとってはうまくいきました(Server 2012 R2で):

Restart-NetAdapter -Name "Ethernet 2"

「Ethernet 2」をアダプターの名前に置き換えます。

注: PS スクリプトを作成するには、メモ帳で新しいドキュメントを作成し、名前を付けて保存しscript.PS1、上記の行を挿入して保存します。ファイルを右クリック -> PowerShell で実行します。

詳細については、このtechnet記事を参照してください。

于 2016-09-07T13:44:32.607 に答える
3

Scott の投稿は、System.Management を使用する非常に小さな C# / .Net コンソール アプリケーションを作成するきっかけになりました。コマンド行パラメーターとして、再始動するアダプターに名前を付けることができます。このコードは、デバイスの処理に関するいくつかの基本を示しており、他の人にも役立つ可能性があります。

using System;
using System.Management;

namespace ResetNetworkAdapter
{
  class Program
  {
    static void Main(string[] args)
    {
      if (args.Length != 1)
      {
        Console.WriteLine("ResetNetworkAdapter [adapter name]");
        Console.WriteLine("disables and re-enables (restarts) network adapters containing [adapter name] in their name");
        return;
      }

      // commandline parameter is a string to be contained in the searched network adapter name
      string AdapterNameLike = args[0];

      // get network adapter node 
      SelectQuery query = new SelectQuery("Win32_NetworkAdapter");
      ManagementObjectSearcher searcher =  new ManagementObjectSearcher(query);
      ManagementObjectCollection adapters = searcher.Get();

      // enumerate all network adapters
      foreach (ManagementObject adapter in adapters)
      {
        // find the matching adapter
        string Name = (string)adapter.Properties["Name"].Value;
        if (Name.ToLower().Contains(AdapterNameLike.ToLower()))
        {
          // disable and re-enable the adapter
          adapter.InvokeMethod("Disable", null);
          adapter.InvokeMethod("Enable", null);
        }
      }
    }
  }
}
于 2011-03-30T14:02:41.757 に答える
3

これは、PowerShell バージョン 5.0.10586.122 Windows 10 Home で使用するものです。これは管理者として実行する必要があります。

Restart-NetAdapter -Name "ethernet"

「UAC をオフにする」または「R-Click-> 管理者として実行」せずに管理者としてこれを実行するには: (これは 1 回限りのタスクです)

  • 上記Restart-NetAdapter -Name "ethernet".ps1ファイルに入れる
  • 新しいショートカットを作成R-Clickします (.ps1ファイル > ショートカットの作成) 。
  • ショートカットで、R-Click> [プロパティ] > [ショートカット] > [ターゲット] > (以下に示すように、場所/ファイル名の前に Powershell.exe を追加します。また、以下に示すように、場所/ファイル名を二重引用符 (") で囲みます。

ここに画像の説明を入力

  • ショートカットで、R-Click> [プロパティ] > [ショートカット] > [詳細設定] > [管理者として実行] (このチェック ボックスをオンにします)

ショートカットを実行するたびに、UAC 画面で [はい] をクリックするだけで、.ps1ファイルで指定したアダプターがリセットされます。

PowerShell (WiFi、LAN など) を使用して使用可能なアダプターの名前を取得するには、次のようにします。

Get-NetAdapter

于 2016-03-19T11:20:20.367 に答える
2

Microsoft ユーティリティdevcon.exeを使用することもできます。

まず、実行devcon listclass netしてデバイス ID を見つけます。

次に、このコマンドでこのデバイス ID を使用しますdevcon restart PCI\VEN_16*( '*'ID 文字列全体を入力する必要を避けるために、ワイルドカードを使用します)。

于 2010-03-07T10:45:35.890 に答える
0

コマンドを試すこともできnetshます。例:

netsh wlan disconnect && netsh wlan connect [ONE OF YOUR WLAN PROFILES]

これらの「プロファイル」のリストは、次を使用して取得できます。

netsh wlan show profiles
于 2012-12-29T21:29:59.340 に答える