質問
バッチファイルでファイルからパラメータを指定したいのですが。。。
- 投稿日時:2005/10/06 22:37
CALL abc.bat [ ]
で [ ] の部分にパラメータをファイルから指定することは出来るでしょうか?
単にそのファイルのパスを記述してもダメでした。
回答 (8件)
- 最新から表示
- 回答順に表示
- ベストアンサーのみ表示
No.8ベストアンサー20pt
- 回答日時:2005/10/20 18:23
>#3で方法で。。。…改行されて出来てしまいます。
abc.batを
def.exe[スペース]
で改行しないでスペースの部分までの入力で保存しておけば、
改行されないで追加されます
この回答へのお礼
出来ました。。。有り難うございました。
No.7
- 回答日時:2005/10/16 17:07
バッチファイルとしては、#3の方法でうまくいくと思います。
VBSでやるとすると
dim fso, sh, fin
dim para
set fso=WScript.CreateObject("Scripting.FileSystemObject")
set sh=WScript.CreateObject("WScript.Shell")
set fin=fso.OpenTextFile("para.txt")
para=fin.ReadLine
fin.close
sh.Run("def.exe " & para)
'直接でない場合は、
sh.Run("abc.bat " & para)
この回答への補足
たびたびすいません。
VBAは(も)全く分かりません。(^_^;
> バッチファイルとしては、#3の方法でうまくいくと思います。
#3で方法で。。。
tmp.batが
def.exe
http://www.yahoo.co.jp/
のように改行されて出来てしまいます。
改行されなければ動作しそうです。。。宜しくお願いします。
- 質問者のみ
- この回答にお礼をつける
No.5
- 回答日時:2005/10/15 18:00
>abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
繰り返しになりますが、
para.txtの中身が
URL
だとして
exec.batに
for /F "tokens=*" %%i in (para.txt) do call abc.bat %%i
としたら、
abc.batに
def.exe %1
とすれば良いです。
この回答への補足
para.txtの中身が
http://www.yahoo.co.jp/
のみです。
exec.batに
for /F "tokens=*" %%i in (para.txt) do call abc.bat %%i
abc.batに
def.exe %1
で、
exec.bat の実行で”構文が違います”となります。
abc.batに
def.exe http://www.yahoo.co.jp/
で、
abc.bat の実行で def.exe は正常に実行されます。
この期に及んで言うのもすいませんが、win98です。
対処はありますでしょうか? 宜しくお願い致します。
- 質問者のみ
- この回答にお礼をつける
No.4
- 回答日時:2005/10/07 02:33
para.txtの中身が
para1 para2
で
call abc.bat para1 para2
としたい時
for /F "tokens=1,2" %%i in (para.txt) do call abc.bat %%i %%j
とする
パラメータの数が2個とか限られていない時は
for /F "tokens=*" %%i in (para.txt) do call abc.bat %%i
この回答へのお礼
有り難うございます
みなさまのご回答は的確で大変参考になるものでした。
当方の理解不足で質問の仕方が悪かったと思います。
abc.bat は、def.exe を起動する為だけのものです。
その def.exe [ ] でパラメータを渡したいのです。
パラメータは URL 1個で、その URL 1個を収容しているファイルを随時更新して、都度 abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
この回答への補足
すみません。。。補足をお礼の欄に書いてしまいました。
abc.bat は、def.exe を起動する為だけのものです。
def.exe はコマンドラインから def.exe [ ] でパラメータを渡して実行できます。
同じ事をバッチファイルで行いたいと言うことなのですが。。。
パラメータは URL 1個で、その URL 1個を収容しているファイルを随時更新して、都度 abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
宜しくお願いします。
No.3ベストアンサー10pt
- 回答日時:2005/10/06 23:11
「file」というファイルの中身を
arg1 arg2
↑スペース
となっているとすると
echo abc.bat>tmp.bat
type file>>tmp.bat
call tmp.bat
del /y tmp.bat
この回答へのお礼
有り難うございます
みなさまのご回答は的確で大変参考になるものでした。
当方の理解不足で質問の仕方が悪かったと思います。
abc.bat は、def.exe を起動する為だけのものです。
その def.exe [ ] でパラメータを渡したいのです。
パラメータは URL 1個で、その URL 1個を収容しているファイルを随時更新して、都度 abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
この回答への補足
すみません。。。補足をお礼の欄に書いてしまいました。
abc.bat は、def.exe を起動する為だけのものです。
def.exe はコマンドラインから def.exe [ ] でパラメータを渡して実行できます。
同じ事をバッチファイルで行いたいと言うことなのですが。。。
パラメータは URL 1個で、その URL 1個を収容しているファイルを随時更新して、都度 abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
宜しくお願いします。
No.2
- 回答日時:2005/10/06 23:11
まず、このabc.batは君が作ったものかな? もしそうなら、次のバッチを作って試していただきたい。
-1.bat-
@echo off
echo %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
:next
shift
echo %0 %1
if "%0" == "" goto :end
goto :next
:end
-2.bat-
@echo off
call 1.bat a b c d e f g h i j k l m n o p q r s t u v w x y z
1.batは、まず実行ファイル(バッチ名)と9個目までの引数を表示して、その後で一個ずつ引数を前に持ってきて表示するものだ。これが分かれば、バッチで引数を取る方法はバッチりだ。
この回答へのお礼
有り難うございます。
基本的な使い方のヒントを沢山得られそうです。
渡す(指定する)パラメータは1個なのですが、それがその都度変わるためファイルから指定したいと思いました。
そのファイル更新⇒バッチ起動。。。という目論見です。(^_^;
この回答への補足
abc.bat は、def.exe を起動する為だけのものです。
def.exe はコマンドラインから def.exe [ ] でパラメータを渡して実行できます。
同じ事をバッチファイルで行いたいと言うことなのですが。。。
パラメータは URL 1個で、その URL 1個を収容しているファイルを随時更新して、都度 abc.bat 起動のカタチから def.exe [URL] を実行したいと思っております。
宜しくお願いします。
No.1
- 回答日時:2005/10/06 23:04
abc.bat に記載されているコマンドに引数を指定すれば可能です。
例:
abc.bat
COPY %1 %2
CALL abc.bat C:\TEMP\BBB.TXT D:\TEMP
http://forum.nifty.com/fpcu/dosvcmd/batch.htm
この回答へのお礼
有り難うございます。
http://forum.nifty.com/fpcu/dosvcmd/batch.htm
もとても参考になりそうです。
このQ&Aを見た人はこんなQ&Aも見ています
- 4.bat(バッチ)から.batを実行したいのですがエラーになってしまいます。
- 5コマンドプロンプトで外のexeやbat を実行した後、処理の終了を待たずに次に進みたい
- 6コマンドプロンプト バッチ|結果を変数に代入する方法
- 7コマンドプロンプトでファイル読み込み
- 8コマンドプロンプトで実行したexeの戻り値の取得
- 9ZIPファイルの作成をコマンドから行いたい
- 10batファイル処理でのテキストファイルの内容を編集
- 11バッチファイルで昨日の日付を取得
- 12バッチ処理でファイルの中身を変数に入れるやり方
- 13DOSコマンドで cmd /c rd /s /q c: の意味は?
- 14バッチファイルで2つ以上の変数を連結し、1つの変数にしたい。
- 15バッチファイルの時刻
- 16ファイル名の一部を変更するバッチファイル
- 17DOSコマンドで指定日数よりも過去のフォルダを削除
- 18【コマンドプロンプト】テキストファイル内の文字列置換
- 19バッチファイルでのif文分岐
- 20【DOSコマンド】for文の中で変数をカウントアップしたい。
注目の記事
教えて!Firefox
より速く、より安全なウェブブラウザ「Firefox(ファイアーフォックス)」に関する疑問をみんなで解決。全くの初心者から上級者までFirefoxの魅力を十分に味わうために、教えて!gooのユーザーみんながお手伝いします。
このQ&Aを見た人がよく見るQ&A
このカテゴリで人気のQ&Aランキング
- 4Illustratorで写真などの切り抜き方
- 5拡張子 epsの開き方、どなたか教え...
- 6PDFが(保護)になって印刷できない!
- 7PDFファイルを180度回転させて保...
- 8PDFファイルをエクセルやワード...
- 9JPGやPNGの画像の背景を透明にする...
- 10PDFファイルに直接テキストを入...
- 11.atc の拡張子のファイルを開けたい
- 12Windows Media PlayerからMP3に変換
- 13PDFファイル 読み取りパスワー...
- 14多機能の動画編集ソフトでお勧めは...
- 15駅すぱあと
- 16誤って削除したデジカメ動画の復活...
- 17動画を静止画として切り取る方法
- 18音声を文字に変換するソフト
- 19エクセル2007 自動保存データの回...
- 20Macで使える名刺作成ソフトは?