C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: 環境変数の展開を一時的に無効にするには?


(過去ログ 64 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■37083 / inTopicNo.1)  環境変数の展開を一時的に無効にするには?
  
□投稿者/ aetos (167回)-(2009/06/12(Fri) 13:55:44)
aetos さんの Web サイト

分類:[その他の言語] 

# タイトルが適切な自信がない…

%hoge%.txt と hage.txt があり、かつ、環境変数 %hoge% の値が hage だった場合、バッチファイルで %hoge%.txt と書くと hage.txt にアクセスしてしまいます。
^%hoge^%.txt と書けば %hoge%.txt を開けることはわかったのですが、^ はファイル名の禁止文字では無いので、今度は本当に ^%hoge^%.txt があった場合に開けなくなってしまいます。
例えば、任意のディレクトリ内のファイルを処理するようなバッチファイルで、そのディレクトリ内にあるファイル名が予期できない場合など、汎用的に処理する方法はあるのでしょうか?
引用返信 編集キー/
■37092 / inTopicNo.2)  Re[1]: 環境変数の展開を一時的に無効にするには?
□投稿者/ .SHO (879回)-(2009/06/12(Fri) 15:15:17)
> そのディレクトリ内にあるファイル名が予期できない場合など、汎用的に処理する方法はあるのでしょうか?

「汎用的」って、%hoge%.txt が存在すれば %hoge%.txt になるし
hage.txt が存在すれば hage.txt になるってことですか?
引用返信 編集キー/
■37095 / inTopicNo.3)  Re[2]: 環境変数の展開を一時的に無効にするには?
□投稿者/ aetos (168回)-(2009/06/12(Fri) 16:22:43)
aetos さんの Web サイト
No37092 (.SHO さん) に返信
>>そのディレクトリ内にあるファイル名が予期できない場合など、汎用的に処理する方法はあるのでしょうか?
>
> 「汎用的」って、%hoge%.txt が存在すれば %hoge%.txt になるし
> hage.txt が存在すれば hage.txt になるってことですか?

ファイル名が %〜% であっても、それを環境変数と認識せず、そのままファイル名として扱う、ということです。

贅沢を言えば、ファイルパスのうち、環境変数と認識する部分としない部分を指定できると嬉しいですが。
例えば、%WINDIR%\%hoge%.txt とあったとき、%WINDIR% は展開するけど %hoge%.txt は展開しない、というような書き方があればいいなぁ、と。
引用返信 編集キー/
■37096 / inTopicNo.4)  Re[3]: 環境変数の展開を一時的に無効にするには?
□投稿者/ .SHO (880回)-(2009/06/12(Fri) 16:24:47)
> ファイル名が %〜% であっても、それを環境変数と認識せず、そのままファイル名として扱う、ということです。

だったら %%〜 でいいのでは。
引用返信 編集キー/
■37097 / inTopicNo.5)  Re[4]: 環境変数の展開を一時的に無効にするには?
□投稿者/ みきぬ (470回)-(2009/06/12(Fri) 16:31:03)
2009/06/12(Fri) 16:35:01 編集(投稿者)
どういう状況で困るのか、よくわからないです。

C:\>type a.bat
@echo off
for %%a in (*.txt) do set X=%%a&call :sub
goto :eof
:sub
echo "%X%"

C:\>dir /b *.txt
%hoge%.txt
hage.txt
^%hoge^%.txt

C:\>a
"%hoge%.txt"
"hage.txt"
"^%hoge^%.txt"

---------- 以下、どうでもいいけどびっくりしたこと。

C:\>set a  =  b

C:\>echo %a  %
  b

C:\>set a b  c = d  e f

C:\>echo %a b  c %
 d  e f

引用返信 編集キー/
■37099 / inTopicNo.6)  Re[5]: 環境変数の展開を一時的に無効にするには?
□投稿者/ aetos (169回)-(2009/06/12(Fri) 16:37:56)
aetos さんの Web サイト
No37097 (みきぬ さん) に返信
> どういう状況で困るのか、よくわからないです。

すいません、なんか俺もよくわからなくなってきました。
昔何かで確かに困ったことがあったのですけど。

とりあえず解決済みにさせて頂きます。
ごめんなさいでした。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -