管理者モード以外でコマンドプロンプトから ping コマンドを実行できないのはなぜですか?

管理者モード以外でコマンドプロンプトから ping コマンドを実行できないのはなぜですか?

私は自分の PC で Windows 10 を実行しています。数か月前、日中に Windows Update をインストールしました。更新前は、コマンド プロンプトから継続的に ping を実行していました。更新が完了した後、ping コマンドを再起動しようとしました。次のエラーが発生しました: 'ping' は、内部コマンドまたは外部コマンド、操作可能なプログラム、またはバッチ ファイルとして認識されません。コマンド プロンプトを管理者として実行すると、ping コマンドは成功します。Windows Update はインストールされてからかなり時間が経っているため、ロールバックできません。通常のコマンド プロンプトで ping 機能を復元するにはどうすればよいですか?

答え1

初め: 新しい、別の、管理者以外の Windows ユーザー アカウント (プロファイル) を試してください。コマンドは別のユーザーで機能しますか? 機能する場合は、Windows プロファイルが破損しています。その中のデータをバックアップして、置き換えてください。

2番目:最初のポイントが「いいえ」の場合は、DISM / SFC を試してください。

(1)管理者として実行でcmd.exeを開きます。

(2)DISM.exe /Online /Cleanup-image /StartComponentCleanup 。

(3)DISM.exe /Online /Cleanup-Image /Restorehealth 。

(4)SFC /SCANNOW。

(5)上記全てが完了したら再起動してテストします。

三番目:コマンドがまだ機能しない場合は、Windows 10 の修復インストールを実行します。

https://www.microsoft.com/en-us/software-download/windows10

最初のオプション (すべてを保持) は、機能する場合 (通常は機能します) に適しています。3 番目のオプション (何も保持しない) は、新規インストールに似ています。

答え2

PATH 環境変数を確認する必要があります。PATH 環境変数は、現在のパスにない実行可能ファイルを検索する場所を Windows に指示します。

この場合、ping通常のコマンド プロンプトから実行すると、デフォルトの作業ディレクトリは通常、ユーザー フォルダー内のどこかになります。

管理者として実行すると、デフォルトの作業ディレクトリはC:\Windows\System32ping 実行ファイルがあるディレクトリになります。これが管理者として動作する理由です。

通常のコマンド プロンプトで、コマンドを完全に修飾して次のように入力することで、これを証明できますC:\Windows\System32\ping.exe google.com

PATH 環境変数には を含める必要がありますC:\Windows\System32

コマンド プロンプトで入力すると、echo %path%現在の PATH 環境変数が表示されます。この変数は、クラシック コントロール パネル -> システム -> 詳細設定 -> 環境変数で変更できます。

関連情報