[前の記事]« 特定条件下のFor文の実行で謎のビープ音
[次の記事]スペース区切りを含む環境変数からn番目以降のトークンを取り出す »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「FOR .. IN ( ) DO..」索引へ
▲カテゴリー「遅延環境変数の展開」索引へ

起動時の引数のうち、最後の引数しか取得できない

1108.
すべてのコマンドライン引数を編集に設定する方法について
2006年05月12日(金) 11時22分
NORIKO
●DOS/Windowsのバージョン↓
 Microsoft Windows XP + SP2

すべてのコマンドライン引数を編集に設定する方法を教えて下さい。
DOS> バッチファイル名 引数1 引数2 引数3 ・・
と実行して、指定された引数をバッチファイル内で取得したいです。

今、以下のようにバッチファイルを書いています。
@echo off
for %%i in (%*) do (
set V_MESG=%V_MESG% %%i
)
echo %V_MESG%

しかし、実行すると最後に指定された引数しか取得されていません。
実行例
DOS> test.bat 1 2 3
 3
※ バッチファイル名:test.bat

以上、申し訳ございませんがよろしくお願いいたします。
1109.
Re:すべてのコマンドライン引数を編集に設定する方法について
2006年05月12日(金) 14時59分
otn
>今、以下のようにバッチファイルを書いています。
>@echo off
>for %%i in (%*) do (
> set V_MESG=%V_MESG% %%i
>)
>echo %V_MESG%

set /? にほとんどそのままの例が載ってます。
cmd /v:on で起動するか、またはバッチスクリプト冒頭でsetlocal enabledelayedexapansionと書くと遅延展開を有効に出来ます。

ただ、このケースだと、
set V_MESG=%*
でいいと思うのですが。
1110.
Re:すべてのコマンドライン引数を編集に設定する方法について
2006年05月12日(金) 15時20分
NORIKO
otn さん、ご連絡ありがとうございます。
確認させていただきます。
1111.
Re:すべてのコマンドライン引数を編集に設定する方法について
2006年05月12日(金) 15時37分
NORIKO
弊社環境でも、回答いただいた方法でうまくいく
ことを確認できました。
非常に助かりました。

どうもありがとうございました。
 
 


カテゴリー「FOR .. IN ( ) DO..」索引へ
カテゴリー「遅延環境変数の展開」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2006年05月12日 22:05に投稿されたエントリーのページです。

ひとつ前の投稿は「特定条件下のFor文の実行で謎のビープ音」です。

次の投稿は「スペース区切りを含む環境変数からn番目以降のトークンを取り出す」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート