アプリ版:「スタンプのみでお礼する」機能のリリースについて

UNIXシェルスクリプトだと

#!/bin/sh
test1.sh &
test2.sh &
wait
test3.sh

などとしてtest1.shとtest2.shの両方をパラレルで実行してから
両方の完了を待って、test3.shを実行できますが、
これと同じようなことがWindowsのコマンドプロンプトで
できないでしょうか。startを使えばバックグラウンドで
実行できることは分かったのですが複数の子プロセスの完了を
待つ、waitに対応するものが無くて困っています。

A 回答 (3件)

古いスレッドを見ていませんでした。



startコマンド(/waitオプション使用)が使えるのではないでしょうか。
詳しくはコマンドプロンプトでのヘルプ、またはWebサイト参照。

余談ですが、whiteline507さんの場合は
Windows環境でcygwinを使うのがいいような気がします。
(linuxコマンドがそのまま使えるので手っ取り早いと思います)

この回答への補足

私も最初はstartコマンドの/waitオプションが使えると
思ったのですが、
start test1.bat /wait
start test2.bat /wait
start test3.bat
としても結局test1.batの完了を待ってからtest2.batを実行開始
するのでダメでした。
(したいことはtest1.batとtest2.batを両方同時に実行して、
 両方とも完了してからtest3.batを実行するというもの)
また、cygwinも入れるには入れているのですが、やりたいことが
「Windowsコマンドの実行時間の計測」ですのでcygwinを介して
コマンドを発行してしまうと正確なWindowsの処理速度が計測
できなくなってしまうので敢えて使っていません。

cygwin使ったとしても中身が「copy test1.txt test2.txt」などと
書かれたtest1.batをcygwinから実行することはできるのでしょうか。
cygwinの中でcp test1.txt test2.txtとしてしまうとWindowsの
処理性能が取れないのでNGだと考えています。

色々とお伝えしていないことがあり、申し訳ありませんが
何か名案がありましたら、よろしくお願いいたします。

補足日時:2007/12/15 01:57
    • good
    • 0

プログラミングについては、ここで説明するよりもWeb上の多くのサイトを参照するのがベターでしょう。

(私も全てWeb上で独習しました。ツールもWeb上で無料で手に入ります。書籍や開発ソフトを買ったことはありません。)
「教えて!goo」にもプログラミングのスレッドがあります。

ほんの一例ですが、下記サイトは実例中心で解りやすいと思います。
「猫でもわかるプログラミング」
http://www.kumei.ne.jp/c_lang/

Windowsプログラム(GUI)、スクリプト(CUI)にしても、結局のところはマイクロソフトのMSDNサイトに尽きるのではないでしょうか。
「MSDN ホームページ」日本語サイト
http://www.microsoft.com/japan/msdn/
    • good
    • 0
この回答へのお礼

確かに色々と勉強すれば分かることとは思うのですが、
期間が1,2週間と限られており、質問させていただきました。
コマンドプロンプトから簡単な方法で出来ないのであれば
この期間で学習してすぐに使いこなすことは無理だと
思うのであきらめます。
教えていただいた関数?がコマンドプロンプトから
追加のソフトやバッチプログラム以外の言語無しに
かけるのかどうかだけ教えていただければ幸いです。

お礼日時:2007/12/07 01:57

ShellExecuteExの実行を


WaitForSingleObjectで監視するという方法があります。
マイクロソフトサイトに詳しい説明があります。

ShellExecuteEx
http://mtbeta.msdn.microsoft.com/ja-jp/library/a …

WaitForSingleObject
http://msdn.microsoft.com/library/ja/default.asp …

この回答への補足

すみません、紹介していただいたコマンドはコマンドプロンプト
から実行できるものなのでしょうか。
ページを見ると
「Winbase.h 内で宣言、Windows.h をインクルード」
「ヘッダー: Shellapi.h にあります。」
などと書いてありますが、WindowsOSにさらに
追加で何かのソフトを入れなければならないのであれば
必要ソフトについても教えていただけますでしょうか。
できればWindows(XPor2003)のみで行える方法があると
助かります。

補足日時:2007/12/06 02:19
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!