
お世話になっております。
WindowsXP環境にて下記のバッチファイルがあります。
コード---
COPY D:\in\L*.txt E:\out\L*.txt
コード---
単純なコピー処理ですが、この後に下記の処理を追加したいのです。
(1)コピー元からコピー先へちゃんとコピーされたかを判定。
(2)コピー元とコピー先のテキストファイルが同一ファイルかを判定。
(3)(1)・(2)で問題なかった場合により、正常と他のテキストファイルに書き込む。
1ファイルでもNGだったら異常と書き込む。
おそらく(1)はIF EXIST~、(2)はFC~ で問題なさそうですが
1ファイルずつ(1)・(2)をコードで書くと、膨大になってしまいます。
(3)はIFで可能かもしれません。
そもそも先頭にLがついたファイルは、以下の条件があります。
・日によってファイル数が違う。500ファイルもある場合あり。
・先頭にLがついているテキストファイル以外の共通部分がない。
L0fje.txtとかL8hfy.txtとか・・・。固定ファイル名がない。
例えば、500ファイルもあると(1)・(2)のコードをひたすらコード入力するのは
非常に効率が悪いです。
良い方法があるでしょうか?
ご存知の方がいれば、ご教授願いますでしょうか?
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
for /f %%i in (D:\in\L*.txt) do (
if exist %%i echo %%~nxi
}
上記の1行目の書式で、"D:\in\L*.txt"に該当するファイル名のフルパス名が一つずつ変数"%%i"に入ります。"do"の後ろの"("から3行目の")"の間に実際の処理コマンドを記述します。複数行可。
フルパス名からファイル名+拡張子だけを取り出したい時には、"%%~nxi"で取り出せます。
過去に私が回答した"for"コマンド関連のQ&Aです。
(2つ目と3つ目は、in ( )の部分が若干異なります。)
『OKWave:Windowsバッチでの作成について困っております。』
http://okwave.jp/qa/q5357631.html
『OKWave:Windowsバッチでできるのかな・・・』
http://okwave.jp/qa/q5431927.html
『OKWave:バッチファイルについて』
http://okwave.jp/qa/q5387178.html
No.3
- 回答日時:
書かれている条件だと、単に copy /v で良さそうですけど。
copy /v 実行後に、
if errorlevel 1 (echo NG>FILE.txt) else (echo OK>FILE.txt)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) 【VBA】For文を使用し、行をコピーして別シートに貼り付ける方法を教えてください。 4 2022/07/19 09:01
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Excel(エクセル) 1つのファイルを3つのフォルダにファイル名を【明日の日付】にして、コピーをしたい 2 2022/12/21 17:43
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
このQ&Aを見た人はこんなQ&Aも見ています
-
コマンドプロンプトによるフォルダ内のファイル存在有無
UNIX・Linux
-
batである文字列内に特定の文字列が含まれているか確認したい
その他(プログラミング・Web制作)
-
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
-
4
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
5
Batch: フォルダ内の特定のファイル以外を全て削除
その他(プログラミング・Web制作)
-
6
コマンドプロンプトでファイル削除時の戻り値を取得したい
その他(プログラミング・Web制作)
-
7
バッチファイルでサーバーのファイルをクライアントへコピーしたい
その他(コンピューター・テクノロジー)
-
8
バッチにてフォルダ内ファイルの差分抽出
その他(プログラミング・Web制作)
-
9
バッチ処理でファイルの中身を変数に入れるやり方
その他(プログラミング・Web制作)
-
10
バッチファイルでフォルダ内のファイル数をカウントしたい
UNIX・Linux
-
11
SQLPLUSで結果を画面に表示しない
Oracle
-
12
moveコマンドで別のドライブにフォルダを移動
その他(OS)
-
13
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
14
XCOPYで指定したフォルダとファイルをコピーしたい
システム
-
15
DOSコマンドでのワイルドカードの使い方
Windows Vista・XP
-
16
コマンドプロンプトで変数が数字であることを判定する方法
その他(プログラミング・Web制作)
-
17
ファイルの先頭行を全て削除したい
Windows Vista・XP
-
18
VBSの処理中一旦処理を止めて再開させたい。
Visual Basic(VBA)
-
19
xcopyで特定のファイルのみをコピーする方法
Windows 10
-
20
Windowsコマンドプロンプトのmoveコマンドが何度も構文エラーエラーを吐き出す件。
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
COPYコマンドで結合すると余計...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
accessでSQL文を使ってcsvファ...
-
Windowsのバッチファイルを利用...
-
VBSでフォルダ内のテキストファ...
-
【C++】 ファイルの名前を変更...
-
エクセルの各セルの内容をそれ...
-
ファイル名の一部をbatで変更し...
-
DIR関数を使ったファイル名の取得
-
ファイルの最後に文字列挿入
-
バッチファイル 複数ファイル...
-
バッチでファイルの内容の比較...
-
javaでemlファイルからtxtファ...
-
任意のディレクトリ以下に存在...
-
wikiでローカルファイルのリン...
-
powershellでコンソール表示を...
-
ファイル名の特定の一文字のみ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
拡張子を元に戻す
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
psqlでエラーログをとりたい
-
COPYコマンドで結合すると余計...
-
エクセルの各セルの内容をそれ...
-
バッチファイルで文字列削除に...
-
ファイルの最後に文字列挿入
-
UWSCでテキストファイルを開い...
-
バッチファイル 複数ファイル...
-
renameコマンドについて
-
ファイル名の一部をbatで変更し...
-
forfilesで検索したファイルを...
-
外部exeに対しての引数受け渡し
-
Windowsのバッチファイルを利用...
-
VBSでフォルダ内のテキストファ...
-
VBAでエクセルをtxtに変換する...
-
ExcelVBA テキストファイルUNIC...
おすすめ情報