こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

クリップボード系ソフトにバッチ処理でデータをコピーさせたい

30000ファイルほどあるテキストファイルの中身をファイルを開くことなくコピーし、ブラウザのとあるフォームにコピーしたいと思っています。

今の手順は
クリップボード系のソフト「クリップNOTE」を起動

下記の質問で教えてもらったtxt2clps.exeというソフトでファイルの中身をコピー
http://oshiete1.goo.ne.jp/qa5154547.html

ブラウザのフォームにペースト
しているのですが、

1つのフォルダに入ったテキスト100ファイルを1つ1つtxt2clps.exeのアイコンの上にドラッグするのが大変なので一気にtxt2clps.exeに読み込ませるバッチを作りました。

バッチの中身は
for %%A in (*.html) do txt2clps.exe %%A
という一文です。

ですが、これでうまくすべて100ファイルを処理してくれたりしてくれなかったりします。
バッチをたたいても5ファイルくらいしか処理してくれないときもあります。(その規則性は分かりません)
これを完璧に100ファイル処理するようにするには何か追記したほうがよい文言があるのでしょうか?

また、フォルダに入ったファイル名は001~100.htmlなので、001から順に処理してほしいのですが順番がばらばらだったりして実際にブラウザに貼り付けるときに結局ファイルの中身を開いて見ないと分からないという事態になってしまっています。
(バッチのときにバーって現れる黒いウィンドウを凝視している感じだと順番に処理しているようなのですが・・・)
バッチ処理を001.htmlから順にするようには出来ないでしょうか?

ややこしいですが、どなたかお分かりになる方よろしくお願いいたします。

投稿日時 - 2009-09-26 04:33:33

QNo.5319415

困ってます

質問者が選んだベストアンサー

うまくいったりいかなかったりする場合は、待ち時間を入れてみるのが良いと思います。なので、バッチファイルにタイマをかませてみましょう。こんな風にしてはどうでしょうか。

for %%A in (*.html) do ping -n 1 -w 500 128.0.0.1>nul|txt2clps.exe %%A

待ち時間を変える場合は、-w 500の数値をいじります。単位はミリ秒なので、この例では500ミリ秒=0.5秒の待ちを入れています。もっと短くしてもいけるかも知れませんので、それはテストしてください。

投稿日時 - 2009-09-28 07:01:20

お礼

ありがとうございます。
数字をいじってちょうどよい速さにしました。

今のところ、正確にバッチ処理ができるようになりました。
当面これで作業したいと思います。

ありがとうございました!

投稿日時 - 2009-09-29 00:27:25

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

非常に素朴な疑問なんですが、今やりたいことは次の流れであってますか?

・001.txtの中身をコピー
・それをブラウザにペースト
・002.txtの中身をコピー(以下同様)

だとしたら、クリップボードに保持できる情報は1個だけなので、バッチ処理で流すと、99個目までのファイルの内容は全て消えてしまい、最後の一つだけがクリップボードに残っておしまいってことになりそうです。何らかのクリップボード拡張ソフトを使っていれば別ですが。ともかく、クリップボードの内容をどうやってペーストしているのか、そこがはっきりしないと回答できないので、それを補足してください。

それと、ファイルの順番が番号通りにならない理由は、ファイルがハードディスク上に書き込まれている順序の影響です。問題のファイルが入っているフォルダをコマンドプロンプトで開いて、DIR /B>1.txtと入力してみてください。これで1.txtにファイルの一覧表ができます。ここに書かれた順番がハードディスク上の順番になり、ここで順番が崩れていたら、バッチの実行順もやはり崩れます。

投稿日時 - 2009-09-26 11:48:36

補足

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

やりたいことの流れはご指摘の通りであっています。

クリップボードに300まで記録できる「クリップNOTE」というソフトを使っているので、それでペーストしています。
なので100ファイルまで一括でファイルの中身情報を保存できます。(たまにバッチで100個うまくいくこともあります。・・・が順番がめちゃくちゃだったりしますが)

DIR /B>1.txtを入力してみたら、順番は001から100までになっていました。

投稿日時 - 2009-09-26 22:40:50

あなたにオススメの質問