• 締切済み

WindowsのPATHの設定と有効性について

Windows10での環境変数のパス指定はコンパネ→システム→システムの詳細設定→環境変数と進んで環境変数PATHを編集して指定することができます。確認したのですが、確かにそうなっています。スペルミスも発見できません(昔と違って表のようになってます)。それを指定した後、パワーシェルでその新規に指定したパスでの実行ファイルを入力しても実行しません。実行ファイルが見つからないというメッセージです。 環境変数PATHがどうなっているか調べるためにコマンドプロンプト(パワーシェルじゃないもの)でPATHコマンドを入力してみると確かに指定されていません。指定したフォルダが入っていないのです。 設定しているのに、設定されていないようになっている理由が不明です。なせ有効にならないのだろうと思うのですが。例えばフォルダ名が.abcのように隠しファイルのようなドットが先頭に入っているとダメなのでしょうか。確かに設定されているのに、何かの理由で有効になっていない理由が知りたいのですが。そして有効化したいのです。よろしくお願いします。

みんなの回答

  • kteds
  • ベストアンサー率42% (1876/4424)
回答No.7

No.6 添付画像の追加です。

  • kteds
  • ベストアンサー率42% (1876/4424)
回答No.6

No.3です。 260文字という制限が理由なのであれば、制限を解除してみてはどうでしょうか。 添付画像参照。

  • bardfish
  • ベストアンサー率28% (5029/17765)
回答No.5

システム環境変数とユーザー環境変数の違いを確認してみましたか? システム環境変数だとWindowsの再起動、ユーザー環境変数なら再ログインしてみてください。 面倒だからどちらの場合も再起動したほうがいいかもしれませんねw で、PATHの設定が反映されているかどうかは「PATH」と入力すればいいはずです。 システム環境変数とユーザー環境変数で同じ環境変数メロイを設定してあれば合体して表示されるはず。 で、一つ一つのパスをdirコマンドを実行すればスペルミスとか記述ミスを発見できると思う。 PATHの中身はセミコロン(:)で区切られているからテキストエディタに貼り付けてセミコロンの位置で改行して分割すればやりやすいかな? そのへんはご自分で工夫してください。何かの言語を使ってプログラム作ってもいいですしww プログラミングするなら、環境変数の値を取得し、セミコロンで分割・配列変数に。配列に格納したパスのファイル一覧を表示させる。 ミスがあればエラーになる。 って感じでしょうか?

skmsk1941093
質問者

お礼

回答ありがとうございます。本件について進展がありました。PATHが効いてないということです。なぜなら、長すぎるからとのいうことです。 では短くすればいいのですが、案外面倒ではないかと思います。あまり使わないソフトのアンインストールを少しやって、さらにPATHの列の中で重複しているものを消すとかです。重複があるというのも驚きですが(それぐらいOSが整理してくれていたんじゃないかと思っていました)。システムとユーザのPATHについて両方とも同じものが設定されているとかにも気づきました。PATHの内容を少しづづ短くするのではダメで修正によって文字数制限以下にしないと修正変更が有効になりません。こまめな修正ではダメみたいです。

  • chachaboxx
  • ベストアンサー率23% (412/1777)
回答No.4

No1 追伸です 試しに現在パスが通っているフォルダ(ディレクトリ)に実行ファイルを移動し、パスの通ってないフォルダから abc.exe は実行できるのでしょうか? また、実行フォルダのアクセス権とかの影響は大丈夫でしょうか?

  • kteds
  • ベストアンサー率42% (1876/4424)
回答No.3

環境変数のPATH指定の考え方は合っています。 Powershell でも コマンドプロンプトでも abc と入力すれば abc.exe が実行できるはずです。 したがって、他の単純な理由ではないでしょうか。 > なせ有効にならないのだろうと思うのですが。 いったんログアウト後に試していますか。 環境変数が反映されるのはログアウト後です。(PC再起動は必要ありません) > .abcのように隠しファイルのようなドットが先頭に入っているとダメなのでしょうか。 実名が abc なのであれば 実名を使用してください。

  • _kappe_
  • ベストアンサー率68% (1522/2216)
回答No.2

PATH環境変数をコントロールパネルで編集した後で新たにPowerShellを起動して、その中で$env:PATHを実行してみてください。 環境変数を編集する前から起動済みのPowerShellは影響を受けません。

  • chachaboxx
  • ベストアンサー率23% (412/1777)
回答No.1

ソフト(プログラム)が環境変数を見に行くように設計されていないと、環境変数が設定されていても反映されません。 実行ファイルのプロパティで実行時フォルダを設定する方法ではダメなのでしょうか?

skmsk1941093
質問者

お礼

回答ありがとうございます。現在問題になっているのはシェルからコマンドを入力するだけなのです。実行ファイルは確実に保存されており、シェルでその場所に移動して./abc.exe のように実行できます。パスが通っているのでシェルがどのフォルダにいても動作するはずなのですが。現在の状況はそれがどこにもないという反応なのです。シェル(これもソフトといえるかもしれませんが)が対応していないということあるのでしょうか。

関連するQ&A

  • PATHの設定について

    (1)システム変数の編集で変数名に「JAVA_HOME」を入力。変数値に「C:\j2sdk1.4.2_08」を入力しました。 (2)同じように「新規(N...)」をクリックし、変数名に「CLASSPATH」を入力。変数値に「.;%JAVA_HOME%\lib\tools.jar」を入力しました。 (3)「システム環境変数」の「変数」の中にある「Path」に「;%JAVA_HOME%\bin」を追加しました。 コマンドプロンプトでpathと入力し確認したところ、 C:\j2sdk1.4.2_08\bin\binというpathは通っていました。 しかし、javacを起動させようとすると、 'javac'は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチファイルとして認識されていません。 と表示されてしまいました。 この場合、どうすればjavacが使えるようになるのでしょうか? よろしくお願い致します。

    • ベストアンサー
    • Java
  • perlとcygwinをインストールしてwindowsにPathを設定

    perlとcygwinをインストールしてwindowsにPathを設定しようとしましたが、 ユーザーの環境変数を C:\cygwin\bin\; C:\xampp\perl\bin\; のように設定しましたが、コマンドプロンプトからは実行できませんでした。 システムの環境変数に追加しようとしましたが、 Pathがいっぱいで追加できませんでした。 Pathがいっぱいの場合、どのように追加したらいいのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Perl
  • [XP] cmdでPATHが無効

    こんにちは、honiyonです。  WindowsXP XP1を使用しています。  以前からの症状なのですが、コマンドプロンプトでPATHが有効になっていないようなのです。  pathコマンドで確認すると、正しく \windows\system32 にパスが通っているのですが、いざ ipconfigやpingを実行しようとしてもファイルが見つからないといわれます。  拡張子まで含めたフルパスで指定して初めて実行できる状態です。  cd \windows\system32 として移動して、  ipconfig  としても実行できず、  ipconfig.exe  とないとダメな所から、PATHEXTも無効なようです。  因みにコマンドで  PATH \windows\system32  として、system32だけへのパス設定としてもダメでした。そもそもこの環境変数自体が無視されている気がします。  これはどのように対処すれば良いでしょうか?  宜しくお願いします(..

  • jdkのPATHの設定について

    jdkをインストールしたのですけど、PATHの設定でまたつまづいています。本を読む限りでは、JDKをインストールしたディレクトリの中の「bin」ディレクトリの中に含まれています。 とのことでしたのでbinのフォルダの所でプロパティを開き場所をコピーしてシステム変数の編集で変数値の所に張り付けたのですけどこれで合っていますか?pathの設定をコマンドプロンプトを起動して任意のディレクトリ上で「java」とだけ入力してみると 、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。となります。この一連の手順で何か間違っている所あるいは抜けている所があればご教授お願いします。ウインドウズビスタです。JDK 6 Update 4 をダウンロードしました。

    • ベストアンサー
    • Java
  • Linux で Java の PATHの設定

    Vine Linux に Java をセットアップしたのですが、そのままでは PATH が通ったところに javac などの実行ファイルがありません。 環境変数も自分で設定する必要があるみたいです。 csh, bash, zsh などいろんなシェルを使っているユーザーがいるのですが、全ユーザーの Java の設定をまとめてやる方法はないでしょうか?

  • 起動してる間だけ、PATHの環境変数にパスを特定の追加する方法

    Windowsにて、起動している間だけ、特定のフォルダを 環境変数のPATHに追加する方法はないでしょうか? (1)システムのプロパティから変更したのではずっと設定は有効のまま (2)コマンドプロンプトからPATH=%PATH:hogehogeとかやると、その コマンドプロンプト内でのみ有効 かと思うのですが、起動時に実行したら次の再起動まで有効に するような方法はないでしょうか?

  • javaのPathの設定

    こんにちは、java勉強中の初心者です、宜しくお願いします。  javaのPathの設定をする場合の環境変数について教えて下さい。 現在 ユーザー環境変数に  変数名「JAVA_HOME」、 「変数値」に「C:\Program Files\Java\jdk1.7.0_60」 システム環境変数の 変数名Pathに*****Time\QTSystem\;C:\Program Files\Java\jdk1.7.0_60\bin; のようになっています。 コマンドプロンプトを起動してjavacを入力すると、 javacは、内部コマンドまたは外部コマンド、操作可能なプログラムまたは バッチファイルとして認識されていません。 と出てきます。 色々試してみたのですが、どこが間違っているのかわかりません。 分かる方、どこが間違っているのか教えてください。 「C:\java\jdk**.**.**.**\bin;」を入力します』と書かれていましたが、 別の本には、「%JAVA_HOME%\bin」と書かれていました。  ・ この書き方は、どちらが正しいのでしょうか、どちらの書き方も正しいのでしょうか。  ・ どちらも正しいのであれば、この「%~%」の意味はどのような意味でしょうか。  ・ 「JAVA_HOME」というのは、統一されている書き方(大文字、小文字、全角、半角も含めて)  でしょうか。  以上宜しくお願いします。 投稿日時 - 2013-04-28 12:30:23通報する

    • ベストアンサー
    • Java
  • Pathを楽に設定したい

    Windows2000で、「システム環境変数」にすでに存在する「Path」変数に、いくつか長めのパスを追加で入れようとしています。入力間違いを避けるためにもバッチファイルを作って設定しようとしたのですが、どうもうまくいきません。 諸般の事情で、Autoexec.batはいじりたくないのです。 プログラムを組んで、レジストリのHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Pahtをいじるしかないのでしょうか。できれば、バッチファイルでチョロチョロっと書いて済ませたいのですけど。

  • パスの設定とかパスを通すって、どうも意味がつかめません・・・

    例えばwindowsで使うgccの扱いで、私は「C言語のe本」というのを読んでいるのですがgccを使えるようにするために ダウンロードしたgcc-2.95-mingw32.zipを展開する時に、展開先をc:\gcc-2.95として展開し、その後windowsXPのコントロールパネル→パフォーマンスとメンテナンス→システム→詳細設定→環境変数→システム環境変数からPath→そこに;c:\gcc-2.95\binを追加してOKとのことで 確かにその通りにしたらコマンドプロンプトでgccと入力するとなんか答えてくれるようになりました。 でも、これがどういうことか意味がわからなくて気持ち悪いです。そもそもbinというのをなんで指定してるのかが何か分からないし、パスを通すって何をしたんだろうと。 それからFreeMat(MatLabと互換性があるフリーソフト)も興味からいじっているのですが、Path toolというものでパスを設定するようです。それを起動するとディレクトリを追加するような画面が出てきます。パスって何かを知っていれば適切なディレクトリを選択できると思いますし、結局、「パスを通す」って何かわからないので全然応用がきかないんです。 このあたりのこと詳しい方がいたら教えていただけませんか? ちなみに「c言語のe本」では、「インストールしたgccが、どこにあるのかコンピュータに教えてあげるための作業だ」と書いてあって、意味がわかりませんでした(汗)

  • Pathの設定

     今日は、Pathについて質問致します。  Win XPです  コマンドプロンプトから"Sysedit"で設定したPathを見てやると、 "SET PATH= C:\JUST\JSLIB32; C:\WINDOWS; C:\WINDOWS\COMMAND"と表示されます。  しかし、コントロールパネル⇒システム⇒環境変数から設定されているPathを見ると下のようになっています。 "%SYSTEMROOT%\system32; C:\JUST\JSLIB32; %SYSTEMROOT%; %SYSTEMROOT%\COMMAND; %SYSTEMROOT%\system32\WBEM"  なぜこの両者は違う表示なのでしょうか。  そもそもこの「%」は何を表しているのでしょうか。