• ベストアンサー

環境変数って何ですか?

自慢になりませんが、パソコンのことは何もわかりません。 こないだBorland C++とかいうのをインストールしたときに、普通の手順でインストールは済んだんですが、うまく動かず人に聞いたところ「パスが通ってないんじゃない?」といわれ、その人に「環境変数」とかいうのを変更してもらったら万事うまくいったんですが・・・。 (1)環境変数って何ですか? (2)「パスが通ってない」とはどういう意味ですか? もちろんパソコン用語辞典で調べてはみたんですが、 「OSのシェルなどに設定されている、システムの属性を記録している変数。変数の名前と意味はあらかじめ決まっているため、環境変数を読み込めばシステムの設定がある程度分かるようになっている(以下略)」 さっぱりわかりません。OSはどもかく、シェルがよくわかってません。どうか初心者向けの解説を乞う次第です。

質問者が選んだベストアンサー

  • ベストアンサー
  • doki2
  • ベストアンサー率51% (440/860)
回答No.4

環境変数とは  OSおよびユーザーによって設定される一連の文字列変数です。  コマンドプロンプトから「set」コマンドで一覧表示できます。  またコマンドプロンプトで「set > c:\set.txt」と入力すればc:\set.txtに一覧が保存されます。 環境変数の編集  「コントロール・パネル」>[システム]で[システムのプロパティ]を呼び出し  [詳細設定]タブをクリックして画面の一番下にある[環境変数]ボタンをクリックして[環境変数]画面で追加・編集できます。  既存の環境変数を編集・削除するとシステムが正常に動作しなくなるので絶対に編集・削除してはいけません。  またシステムが自動的に設定する環境変数はこの画面では編集できません。  画面上の部分ではログインユーザーごとの環境変数  画面下の部分では全ユーザーに適用される環境変数を設定します。  設定された環境変数はレジストリファイルの下記キーに保存されています。  HKEY_CURRENT_USER\Environment  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment 環境変数の呼び出し  環境変数は変数名を「%」で括って呼び出すことができます。  例えば「ALLUSERSPROFILE=C:\Documents and Settings\All Users」と設定されている状態で コマンドプロンプトで 「echo %ALLUSERSPROFILE%」とタイプすれば  変数設定式の右辺が自動的に呼び出され、「C:\Documents and Settings\All Users」と表示されます。  (「echo」:表示せよと言うDOSコマンドです。)  実際に試してみるとよくわかると思います。   コマンドプロンプトでの変数設定  例えば「set 3=Nagasima」と入力して「echo %3%」と入力すれば  画面に「Nagasima」が表示されます。  この場合、一時的な環境変数になりレジストリには保存されません。  パソコンを再起動するとこの設定は消えてしまします。 Path設定  コマンドプロンプトを表示した場合「C:\Documents and Settings\ユーザー名」と表示されます。  この位置からタスクマネージャ(taskmgr.exe)を呼び出すには  「taskmgr.exe」はC:\WINDOWS\system32フォルダにあるので  通常「C:\WINDOWS\system32\taskmgr.exe」と入力する必要があります。    ところが環境変数で「Path=C:\WINDOWS\system32」と設定されていれば「taskmgr」だけでタスクマネージャを呼び出すことができます。    このように特定のフォルダをどこからでも参照できるように設定することを「パスを通す」と言います。 そのほか主なものとしては OSのバージョンによってWindowsディレクトリが異なる場合 %windir%でWindowsディレクトリを参照できます。 ログインユーザー名によってプログラムやデスクトップのパスが異なる場合 %USERPROFILE%で現在のログインユーザーのパスを参照できます。

その他の回答 (3)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

(1) シェルからアクセスできるその時々の変数、概ね調べられた説明の通りですね。 シェルというのは、貝殻を英語で言うとshell(シェル)になります。 OSとユーザーの仲介をするプログラムのことです。 ウィンドウズで言えば、コマンドプロンプトやエクスプローラーのことをいいます。 例えば、ファイルをドラッグしてコピーしたりするとき、 エクスプローラーがその動作を理解して、OSにやらせているというような感じですかね。 そういう風にOSを貝の中に隠すようにユーザーから隠蔽するのでそういいます。 (2) 実行できるファイルは、ディスクの中に一杯ありますが、 それをいちいちディスクの中を全部検索してたのでは、時間がかかって しょうがないですね。 なので、実行できるファイルは、このディレクトリにあるという検索するディレクトリのリストを持つようにしています。 これは「環境変数」PATHに登録されているのです。 逆に言えば、このPATHに登録されていないディレクトリ(フォルダ)にあるコマンド(実行可能ファイル)は、システムは見つけることができません。 なので、「パスが通っていない」と言えば、 パスに登録されているディレクトリの中に実行しようとしたコマンドがない。 または、実行しようとするファイルのあるディレクトリがPATHに登録されていない。 なので実行できない。 というような意味になります。

dollar
質問者

お礼

知らない用語を説明してもらうとき、いつもその説明の中に知らない用語が入ってたりしてかなわないんですが、これは難なく読めました。ありがとうございました。

  • 50100
  • ベストアンサー率28% (99/351)
回答No.2

ファイル名を指定して実行を選び、cmdと入力してください。そしてsetと入力してEnterキーを押すと表示されるのが環境変数です。アプリケーションから共通で利用できる情報が設定されています。 アプリケーションを設計するとき、どんなコンピュータでも問題なく実行できるように特定の値ではなく、環境に応じて変わる値を使いたいので、このような仕組みが備わっています。 パス(PATH)とは環境変数の1つで、プログラムを実行するときに、そのプログラムがどこのディレクトリに置いてあるかを探しにいくための地図のようなものです。地図に載っていないものは見つかりません。 パスが通っていない=地図に載っていないということです。 教える専門家ではないので解りづらかったかもしれませんね。力不足ですみません^^;

dollar
質問者

お礼

ありがとうございます。 実際に環境変数を表示させて見てみると、何だかわかったような気になってきました。

回答No.1

環境変数は各プログラムが参照するパラメータです。たとえばテンポラリファイルの置き場所とか。 どこか一箇所で決めておけば、みんなで参照できるでしょ?そういうのを環境の変数、環境変数というのです。 パスというのは、ファイルにたどり着くまでのディレクトリも含めた情報です。c:\windows\system32\drivers\etc\hosts というファイルがある場合、hosts というファイルは c: ドライブの下の \ -> windows -> system32 -> drivers -> etc というフォルダをたどってやっと見つけることができます。この過程(パス)を記述したのがファイルパス c:\windows\system32\drivers\etc\hosts です。 シェルというのは荒っぽく言うとユーザーの操作を受け入れる画面のことです。ウィンドウズのデスクトップあるでしょ?タスクバーやスタートメニューが並んでて、いろいろ操作できるでしょ?あれはすでにシェルです。

関連するQ&A