質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Q&A

解決済

1回答

873閲覧

【バッチファイル】コードを綺麗に整理したい!

退会済みユーザー

退会済みユーザー

総合スコア0

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

0グッド

0クリップ

投稿2021/07/23 02:48

下記のようなバッチファイルを作成しました。
機能上は問題ないですが、見栄えが気になります。

実行内容はそのままに綺麗にするのは、
どんなコードがおすすめでしょうか?

【コード原文】

:top

timeout 1
rem

pushd C:\Users\mika.hattori\Desktop\bat

for %%F in (*.csv) do for /f "tokens=8 delims=," %%A in (%%F) do if "%%A" == "1" move %%F target

popd

goto top

:top

timeout 2
rem

robocopy C:\ML C:\Users\mika.hattori\Desktop\bat\backup /E /DCOPY:DAT

goto top

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

topというラベルが2つあるとか、前半で無限ループなので後半には行かないとかが、おかしい点ですが、
それ以外だと、改善すべき点は、pushd/popdをループの外に出すくらいでしょうか。

機能面としては、
「機能上は問題ない」とお書きなので大丈夫なのでしょうが、もし対象ファイル中に第8カラムが1のものが複数行あった場合には、moveが複数回実行されて、2回目以降はファイルが無いというエラーになりますね。

投稿2021/07/23 03:37

otn

総合スコア84555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/07/23 04:08

ご回答ありがとうございます。 コードの通り、2種類の動作を違うタイミングでループさせたいと思いました。 試運転では問題なさそうに感じましたが、改善が必要みたいですね・・・ pushd/pupdをループ外にし、 後半moveの複数回実行エラーについては再度検証します。
退会済みユーザー

退会済みユーザー

2021/07/23 04:17

下記のように修正しました。 欲を言えば、2種類の動作実行のタイミングを異なる時間にしたいです。 もし何かご教示頂けることがありましたら宜しくお願い致します。 【修正後】 pushd C:\Users\mika.hattori\Desktop\bat :top timeout 10 rem for %%F in (*.csv) do for /f "tokens=8 delims=," %%A in (%%F) do if "%%A" == "1" move %%F target robocopy C:\ML C:\Users\mika.hattori\Desktop\bat\backup /E /DCOPY:DAT goto top popd
otn

2021/07/23 04:38

> 欲を言えば、2種類の動作実行のタイミングを異なる時間にしたいです。 意味がよく分かりませんが、別々に処理したいのなら、別々に処理すれば良いだけでは?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問