MSのコマンドプロンプトに入力

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

MSのコマンドプロンプトに入力

#1

投稿記事 by picko » 17年前

始めまして
MSのコマンドプロンプトに要求されるデータ(文字列)にマッチファイルで自動入力できますか。

例えば、
> なまえを入力ください:

に対して、パイプ機能(?)等で "HNAKO"
パッチファイルの中なら自動的に入力してやるというやり方あるのでしょうか。

できるなら、具体的なやり方お願いいたします。


宜しくお願いします

toyo

Re:MSのコマンドプロンプトに入力

#2

投稿記事 by toyo » 17年前

リダイレクトでファイルの内容を標準入力にすることならできます。
name.txtに
HANAKO
と書いておいて
a.exe < name.txt
とします。

へろりくしょん

Re:MSのコマンドプロンプトに入力

#3

投稿記事 by へろりくしょん » 17年前

echo HNAKO | a.exe

ではダメですか。

picko

Re:MSのコマンドプロンプトに入力

#4

投稿記事 by picko » 17年前

ご返答ありがとうございます

echo HNAKO | a.exe

は効かないですね。

picko

Re:MSのコマンドプロンプトに入力

#5

投稿記事 by picko » 17年前

a.exe < name.txt

もだめですね。

a.exe XXYY < name.txt
a.exe < name.txt XXYY

全部だめ...

XXYYはmain()関数に要求される引数です。

toyo

Re:MSのコマンドプロンプトに入力

#6

投稿記事 by toyo » 17年前

入力要求が標準入力からの入力じゃないのかもしれませんね
元のプログラムのソースを見ないとわかりませんが
getch( )やgetche( )だと直接キーボード入力なのでだめでしょう

picko

Re:MSのコマンドプロンプトに入力

#7

投稿記事 by picko » 17年前

toyo様

ご教授ありがとうございます

>getch( )やgetche( )だと直接キーボード入力なのでだめでしょう

おっしゃる通り、プログラムの中ではgetch( )やgetche( )を使っているそうです。
これなら、自動入力できなくなるのでしょうか。

もし、自動入力できるC言語の関数あれば、ソースを修正してもらいたいのです。


どうぞ、宜しくお願い致します

Mist

Re:MSのコマンドプロンプトに入力

#8

投稿記事 by Mist » 17年前

> プログラムの中ではgetch( )やgetche( )を使っているそうです。
「~そうです。」ということは、pickoさんはそのプログラムソースを見ることが出来る立場には無いということでしょうか?

> ソースを修正してもらいたいのです。
fgetc(stdin)を使えばうまくいくと思いますが、具体的にどう修正するのかはpickoさんが元のソースを提示しなんともいえません。

picko

Re:MSのコマンドプロンプトに入力

#9

投稿記事 by picko » 17年前

Mist様

ご返答ありがとうございます。

プログラマは別の人で、
ch = _getche();
を使っていたそうです。

ch = fgetc(stdin);
に変えてもらったら、今度は入力してリターンを押さなければならないです。

ただ、ファイルを用意して、

a.exe < file.txt
にすればうまく出来ました。

file.txtがなくても、できる方法もあるのでしょうか。

もう一度ご教授いただければ幸いです。

閉鎖

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