Windows 7でcmdを実行すると(Windows Runで'cmd'
と入力して)、次のエラーが表示されます。
'-p'は、内部または外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません。
環境変数のPATHをチェックしてみました。 echo %PATH%
を実行すると、次のようになります。
C:\ Windows\System32; C:\ Windows; C:\ Windows\System32\WindowsPowerShell\v1.0; C:\ xampp\php;
PATHが指すすべてのディレクトリを確認しました。すべてが整っているようです。理解できないのは、'-p'
が呼び出されている場所です。 cmd
を呼び出すときにのみ出て、cmd
またはipconfig
を実行したときに出ないので、それはping
と関係があると思います。例えば。
レジストリに 'AutoRun'コマンドが設定されている可能性があります。ユーザーごとに1つとコンピューターごとに1つの2つのレジストリキーがあり、コマンドプロセッサ(cmd.exe
)が起動するたびに実行されるコマンドを定義できます。実際にはcmd /?
にリストされています。
とにかく、cmd /d
を実行して、同じメッセージが表示されるかどうかを確認してください。 /d
フラグは「自動実行コマンドを実行しない」ことを意味し、これをテストするのに最適です。
レジストリ値は次のとおりです。
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
両方を確認してください。デフォルトでは、どちらも存在しないはずです。コマンド文字列を修正するか、完全に削除することもできます。
関連: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx
または、ネイティブcmd
の代わりに実行されるcmd
という名前のバッチスクリプトまたは同様の設定を使用することもできます。コマンドwhere cmd
を実行して、パス内のcmd
sのリストを実行順に出力します。 C:\Windows\System32\cmd.exe
の前/前以外がある場合は、それらを削除するか、PATH環境変数からそれらのパスを削除します。