web-dev-qa-db-ja.com

'findstr'は内部コマンドまたは外部コマンドとして認識されません。

コマンドラインプロンプトから今日JBossを起動しているときに、次のエラーが表示されました。

'findstr' is not recognized as an internal or external command
28
user1314506

Googleで検索してください。たくさんの答えが見つかります。ただし、以下のように修正してください。次の値を右クリックして[マイコンピュータ]-> [詳細]-> [環境変数]-> [システム変数]-> [パス変数の選択]->下の値を追加します。

C:\ WINDOWS\system32

その変化に対応するはずです。

61
Phani

私にとっては、findstr(windows/system32から)をwildfly/binに対処したときに機能します

3
Ssss

最も簡単な手順を徹底してください:-

  1. C:\Windows\system32\に移動し、findstr.exeファイルをコピーします。
  2. このファイルを場所に貼り付けますC:\Program Files\Java\jdk1.6.0_24\bin
  3. もう一度jbossを実行すると、これから抜け出します。
2
Suryaprakash

「findstr」を「C:\ Windows\system32\findstr」に置き換えることにより、ディレクトリをハードコードすることもできます。これは、制限されたユーザー権限を持つシステムを使用する場合に便利です。

1
user3356759

%SystemRoot%が評価しているかどうかを確認します(コマンドプロンプトにset pathと入力します。%SystemRoot%は表示されず、実際のパスが表示されます)。パス変数(ユーザー、またはシステム)の最初のエントリが%(環境変数)で始まる場合、問題が発生する可能性があります。

これを解決するには、この最初のエントリを、パス内の環境変数につながっていない他のエントリと交換します。

1
Mike Casa

私はplayフレームワークで作業しようとしましたが、activator.batファイルを実行することに固執しましたが、解決策はwindows/system32/findsrからファイルをコピーし、スタックフォルダーの下に貼り付けてから、それぞれのファイルを再度実行します。 andrewsiand Suryaprakashに感謝

0
I.Sharma

他の人が指摘したように、問題はWindowsのPATH変数の間違った設定にあります。 article によると、これはおそらく、いくつかの愚かなインストーラーがWindowsレジストリのPATH変数を誤って変更したためです。レジストリには、REG_SZREG_EXPAND_SZの2つの異なる文字列値タイプがあります。 2番目のものだけが%SystemRoot%の拡張を許可します。

そのため、コマンドプロンプトでset pathと入力してパスを確認します。展開されていない%SystemRoot%およびその他の変数がPathにある場合、影響を受けます(PATHは変数ではなく、プレーンディレクトリ名のみを表示する必要があります)。

レジストリのHKEY_CURRENT_USER\EnvironmentおよびHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\EnvironmentのPath変数を編集する必要があります。キーのタイプを変更することはできないため、パス値をどこかに保存し、キーを削除して、タイプREG_EXPAND_SZで再作成します。変更を有効にするにはログアウトする必要があります。

0
Marki555

私の場合(JBoss関連ではありません)、以下がこのエラーの修正に役立ちました。

の代わりに:

SET path="%path%;C:\some\additional\path"

私が使用した:

SET "path=%path%;C:\some\additional\path"
0
Denxorz

現在のWindowsシステムはシステムディレクトリに大文字の「S」を使用していることに注意してください。C:\ WINDOWS\System32%SystemRoot%\ System32

大文字のSを省略すると、%PATH%の行が無視されます。

0
Bhoomi2010