環境変数TEMPについて、設定内容と echo %TEMP% の出力とが異なる原因として考えられるのは?
みなさんこんばんは。
Windows 2003 x64 Editionにて、環境変数TEMPをシステム環境変数にて以下のように設定しています。
TEMP=C:\TEMP
この状態で、コマンドプロンプトを起動し、echo %TEMP% と実行すると、
C:\TEMP\1
と表示されます。
実際に、(どのタイミングでかは定かではありませんが)C:\TEMP\1も作成されていました。
こちらの環境では、ユーザー環境変数では指定していません。
また、システム環境変数の設定は、マイコンピュータ>プロパティ>詳細設定>環境変数 から設定しています。
レジストリエディタ内でも、C:\TEMP として保存されていることは確認しています。
なぜ、echo %TEMP% を実行すると"\1"が追加されるのか、原因がわかる方いらっしゃいませんか。
もしくは、ここをチェックしてみたら?というアドバイスでも助かります。
ちなみに、コマンドプロンプトで set TEMP=C:\TEMP と実行しておくと、次に echo %TEMP% を実行した結果は C:\TEMP となり、\1はつきませんでした。
また、新しくユーザーを作成してそのユーザーでログオンしたところ、echo %TEMP% の結果は C:\DOCUME~1\<ユーザー名>\LOCALS~1\Temp\2 となりました。
このユーザーでは環境変数類は変更しておらず、ユーザー環境変数にてデフォルトで以下のように設定されています。
%USERPROFILE%\Local Settings\Temp
OSのセットアップは当方で実施していないため、
Windows 2003の仕様なのか(x64だから??)、
当方の環境の特殊な設定なのかの判断がついていません。
特殊な設定といっても、Windowsでレジストリに登録されている環境変数をさらに上書きする設定がどこで行われているのか、さっぱり見当つかない状況です。
UNIXなら/etc/environmentとか.loginとか.cshrcとか、いろいろと確認ポイントはあると思うのですが・・・
どなたかピンときた方、よろしくお願いします。
お礼
ありがとうございます!