ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
くぼ

ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

#1

投稿記事 by くぼ » 15年前

ファイル名の入力を要求する
複数の実行ファイルを
一度に実行する方法を教えて下さい。

コンパイラはgccです。

例えば、a.exeとb.exeという二つの実行ファイルがあり、
それぞれa.txt、b.txtというファイル名の入力を実行後に
要求してくるとします。

仮に、

./a.exe;./b.exe

と入力すると、実行は可能ですが、
もし、a.exeとb.exeがともに
パラメータ等を記載したファイル名の入力を要求している場合では、
このままでは、いちいちファイル名を入力せねばならず
効率的ではありません。

これを一度に実行する何かよい方法を教えていただけませんか?
初心者な僕ですが、よろしくお願いします。

softya

Re:ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

#2

投稿記事 by softya » 15年前

stdinからの入力ならリダイレクトすればよろしいかと。
./a.exe <ina.txt;./b.exe <inb.txt

くぼ

Re:ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

#3

投稿記事 by くぼ » 15年前

返信ありがとうございます!!
しかしながら、

./a.exe < a.txt;./b.exe < b.txt

(ina.txtのinは誤字ですよね?)

ではファイルを読んでくれませんでした...

(説明:なお、僕の作った実行ファイルでは
./a.exeで実行後、
"ファイル名を入力しなさい。"という文章の表示後に
char str[100];
scanf("%s",str);
でパラメータファイル名を読み見込むようにしています.)

何故..?

softya

Re:ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

#4

投稿記事 by softya » 15年前

違いますよ。入力のリダイレクトですので、
ina.txtに中に
a.txt
inb.txtに中に
b.txt
と書いてください。

./a.exe < a.txt;
と書くとa.txtの中身をscanf("%s",str); に入力する事になります。

くぼ

Re:ファイル名の入力を要求する複数の実行ファイルを一度に実行する方法

#5

投稿記事 by くぼ » 15年前

なるほど!
パラメータを記載したファイル以外に
パラメータ名を記載したファイル(a.txtとする)を用意して

./a.exe < a.txt

とやる方法ですね。
これで新たにファイル生成は必要ですが
目的は達成せきますね。
ありがとうございました!

閉鎖

“C言語何でも質問掲示板” へ戻る