• 締切済み

環境変数の変更(ユーザごとの)

HOMEPATHやUSERPROFILE等の環境変数を変えたいと考えています。OSは2000Serverです。setコマンドを記述したバッチをログインスクリプトに仕込みましたが、うまくいきませんでした。試しに環境変数ではなく a=b等と記述してもやはり反映されませんでした。何度再起動しても、同じです。環境変数の変更方法(ユーザの)をご存知の方がいらしたら、よろしくお願い足します。

みんなの回答

回答No.2

HOMEPATHやUSERPROFILE等の環境変数は、特別な環境変数なので 一般的な環境変数と同じの方法では変更できません。 Windows2000ユーザ管理上の一つ要素なので、コマンドベースなら、 "NET USER"コマンドで変更できます。 オプションの詳細は、"NET HELP USER"で確認できます。

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

>setコマンドを記述したバッチをログインスクリプトに仕込みましたが、 >うまくいきませんでした。 setコマンドで追加した環境変数は、そのバッチファイル終了までの間しか有効ではありません。 環境変数はレジストリに記述されていますので.regファイルを作成して、 regedit /s ファイル名 で取り込んでください。確認メッセージが表示されなくなりますのでログインスクリプトに組み込めるようになります。 場所は HKEY_CURRENT_USER\Environment になります。 また、新しいユーザを作成したときに最初から変更させたいときは、あらかじめ、HKEY_USERS\.DEFAULT\Environmentの中を編集しておけばこれが各ユーザに反映されます。

zakugufu
質問者

補足

HKEY_USERS\.DEFAULT\Environmentの中にuserprofileの名前がなかったので、新たに値を作成して、任意のフォルダの場所を記述しました。その後、新しいローカルユーザを作成して、ログインしましたが、userprofileはデフォルトのままでした。 私の設定方法に問題があるのでしょうか?

関連するQ&A

  • PATH などの環境変数を変更する方法

    Windows XP で、「PATH」などの環境変数を変更するときは、  [システムのプロパティ]-[詳細設定]-[環境変数] で変更します。 しかし、このようにしても、その変更がすぐに反映してくれません。たとえばコマンドプロンプトで「SET」を実行しても、前と同じままです。 一回ログアウトして、ログインし直すと反映されます。 ログアウトせずに変更を反映させる方法はないでしょうか?

  • スーパーユーザーの環境変数

    スーパーユーザーの環境変数を作成したいのですが、 スーパーユーザーログイン時には必ず環境変数aaaがセットされるようにするためのコマンドを教えてください。 環境変数:aaa 値:/home/

  • 環境変数

    環境変数って何でしょうか?  アプリケーションプログラムやバッチプログラムに対して、ユーザーが設定する変数。環境変数の設定には、MS-DOSのSETコマンドを使用する。COMMAND.COM自身が利用する環境変数としては、COMSPEC、PATHがある。 とありますが意味がわかりません。 「ユーザーが設定する変数」の「変数」って? 環境変数が何なのか教えて頂けないでしょうか。 よろしくお願いします。

  • 環境変数PATHをスクリプトかバッチから設定する方法

    社内研修の準備のために、何台ものパソコン(Windows XPを想定)のセットアップを 行うことがありまして、 ・ZIPファイルの展開 ・展開後フォルダを特定の場所へ配置 ・環境変数JAVA_HOMEとPATHの変更 などをバッチやJavaScriptを利用して自動的に処理させようと しています。ZIPの展開と配置は解決できたのですが、 環境変数(pathなど)をスクリプトかバッチから設定できないでしょうか? JavaScript(またはVBスクリプト)で次のように記述すると、 一見うまくいったように見えるのですが、レジストリが書き換わるだけで、 再起動しないとpathが有効になりませんでした。(スクリプト実行後に開いた コマンドプロンプトで echo %path% をしても反映されていない。) <setenvion.js> var shell = WScript.CreateObject("WScript.shell"); shell.RegWrite("HKEY_CURRENT_USER\\Environment\\path", "C:\\Program Files\\Java\\jdk1.6.0_06\\bin", "REG_EXPAND_SZ"); googleで検索しても、バッチを実行するためにpathを設定しましょう、みたいな 情報しか見つからないので、質問させていただきました。 上記のスクリプトでも再起動すれば反映されるのでその点我慢すればよいのですが、 なにかよい方法をご存知の方、よろしくお願いします。

    • ベストアンサー
    • Java
  • バッチファイルで環境変数が設定されません

    よろしくお願いいたします。 Windows XP Pro の command.com において、バッチファイルの中で set コマンドを使って環境変数を設定しても、バッチから抜けると環境変数の設定ができていません。 バッチ終了後の環境変数は全てバッチ開始前と同じ状態です。 command.com のプロンプトで set コマンドを実行すると、環境変数はセットした内容に変化もしくは追加されます。 cmd.exe ではバッチからでもプロンプトからでも set コマンドで環境変数を操作できます。 なぜ command.com 上のバッチから操作できないのかわからず、不便でかないません。 アドバイスをよろしくお願いいたします。 @echo off set foo=word path=c:\ echo %foo% echo %path% 上記バッチを実行すると word c:\ と表示されますが、set コマンドで確認すると FOO は存在しません PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;... と表示されます。 これはバッチ実行前の値です。

  • システム環境変数が保存されない?

    質問させて下さい。 set Path=%Path%;C:\*** というコマンドをバッチファイルにして実行しているのですが、マイコンピュータのプロパティからシステム環境変数を確認してもセットしたはずのパスが登録されていません。再起動しても同様です。ちなみにシステムアカウントで実行しました。 上記のコマンドは一時的にセットするもので、永久保存するコマンドは別にあるのでしょうか? 宜しくお願いします。

  • 環境変数について

    ◇環境変数をセットしたい場合 WindowsXPを使っています。 コントロールパネル-システムの環境変数から設定しましたが、 ログオフや再起動しないと反映されないのでしょうか? ユーザー環境変数やシステム環境変数の違いも影響有るのでしょうか? AA C:\ PATH %AA%;として、%で括れば、登録済みの環境変数も使えるのでしょうか?

  • 環境変数とエスケープ文字の使い方教えて下さい。

    NTBackupで「別の場所にバックアップ レポートのログを保存する方法」を実行ユーザを意識しない形で実装したいです。 http://support.microsoft.com/kb/241162/ja 具体的には下記パスの"User_Name"を環境変数に置き換え対処したいと思っています。 旧 : "Documents and Settings\User_Name\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data" 新 : %HOMEDRIVE%%HOMEPATH%\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data しかしこのコマンドで実装するとバッチエンジンは特殊文字がエスケープされてないため実行できません。 新2 : "%HOMEDRIVE%%HOMEPATH%\Local Settings\Application Data\Microsoft\Windows NT\NTbackup\Data" この様にするとコマンドプロンプトで実行は出来ますが、バッチでは実行できません。 どの様にエスケープすればいいのでしょうか? 環境 : Windows Server 2003 SP2

  • システム環境変数と、ユーザー環境変数。

    こんにちわ。 昨夜からちょっと困ってパニックになっています。 1から書いていきます。 読みにくかったら、申し訳ございません。 コンパイルしたJanken.classが、 C:\java>java Janken で作動せず、 java.lang.NoClassDefFoundErrorのエラーが出ました。 そこで、参考書を見て環境変数に問題があるということなので、 環境変数を触ったのですが、それでも上手く行かずネットで検索をかけて調べたところ、 "システム環境変数"と"ユーザー環境変数"の設定を変えました。(osは、XPです。) それ以来、 ----------------- C:java>java Janken 'java'は、内部コマンドまたは、外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 C:\java ---------------- と、なります。 コンパイルも出来ません。 「システム環境変数には、触れてはいけない」と 検索した先のページには、書かれていまして、 ユーザー環境変数と間違って、システム環境変数を変えていたことになります。 元に戻すには、PCの初期化が必要なのでしょうか? また、参考書の通りコマンドプロンプトに打つとこう表示されます。 ----------- C:\Documents and Settings\Owner>set CLASSPATH=%CLASSPATH%;c:\java\bin C:\Documents and Settings\Owner>echo %CLASSPATH% %CLASSPATH% C:\Documents and Settings\Owner> ------------- また、JAVAの入ってるフォルダは、 C:\JAVAで、ローカルディスクCの中です。 JAVAフォルダの中は、j2sdk-1_4_0-doc-jaフォルダと、J2SEフォルダ、 Janken.classがあります。 もう何が正しくて、何が誤りなのかもわかりません。 どうか、よろしくお願いいたします・・・・。

    • ベストアンサー
    • Java
  • Javaの環境変数設定について。

    はじめまして。OSはWindowsXPでJavaの勉強をしようと思い、「JDK 5.0 Update 16」をインストールし、環境変数の設定を行ったのですが、PATHにもともと環境変数があったのに、間違えて新しい環境変数に変更してしまいました。コマンドプロンプトで「jsvac」コマンドを打ち込んだら C:\Documents and Settings\takumi>javac 'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出ました。 環境変数を元に戻す方法はないのでしょうか? どなたかご教授お願いします。

    • ベストアンサー
    • Java