dポイントプレゼントキャンペーン実施中!

掲題の件ですが、xcopyコマンドを実施するバッチファイルを作成したのですが、xcopy実行時にlogファイルを出力させている為、進行状況がわからない状態の為進行バーみたいなのを表示させたいと思っています。
xcopy %Epass% %backup% /s/e/i/h >%Fpass%\logs.txt

どなたかご教授いただけますでしょうか。

質問者からの補足コメント

  • 以下のサイトで進行状況を表示する内容を確認しましたが自身のバッチファイルにどう変えればいいかわからず、どなたかご教授いただけますでしょうか。
    =====================
    @echo off
    for /L %%v in (1,1,10) do (
    set /p x=*< nul
    ping 1.0.0.0 -w 1 -n 1 > nul
    rem timeout /t 1 > nul
    )
    echo OK!
    -----
    output....
    >********** OK!
    =====================
    http://ugarailog.blogspot.com/2013/05/bat.html

      補足日時:2018/08/14 16:21
  • tatsu99さんから回答いただいたtee.cmdを追加したコマンドで実行しましたが「無効なパラメータの数です」とエラーとなってしまいxcopyが実行されません。
    「tee.cmdはパスの通ったところに置いていくことが前提」とのことですが、これば実行するバッチファイルと同じパス内にtee.cmdを置くということでよろしいでしょうか。

    初歩的なことをお伺いしてしまい申し訳ございませんがもう少し使用方法をご教授いただけますでしょうか。

    No.2の回答に寄せられた補足コメントです。 補足日時:2018/08/15 11:14

A 回答 (4件)

No2,No3です。

失礼しました。提示したコマンドに誤りがありました。
誤:
xcopy %Epass% %backup% /s/e/i/h c:\temp\tee.cmd %Fpass%\logs.txt
正:
xcopy %Epass% %backup% /s/e/i/h | c:\temp\tee.cmd %Fpass%\logs.txt

No2で提示したコマンド
誤:
xcopy %Epass% %backup% /s/e/i/h tee.cmd %Fpass%\logs.txt
正:
xcopy %Epass% %backup% /s/e/i/h | tee.cmd %Fpass%\logs.txt

tee.cmd の前にパイプ記号の | を付けてください。
オプション /Y もつけた方が良いです。確認メッセージが表示され、それに反応して人間が応答すると、tee.cmdが誤動作します。
    • good
    • 1
この回答へのお礼

ありがとうございます!
修正いただいたコマンドで無事にxcopy動作し、進行中のファイル名が表示されるようになりました!!!

これで本番環境で実施したいと思います!

お礼日時:2018/08/15 11:56

>「tee.cmdはパスの通ったところに置いていくことが前提」とのことですが、これば実行するバッチファイルと同じパス内にtee.cmdを置くということでよろしいでしょうか。



いいえ、違います。
OSがtee.cmdを探しに行くとき、どこを探すかを指定したパスです。
下記URLに環境変数Pathの設定方法がありますので、参考にしてください。
http://next.matrix.jp/config-path-win7.html
上記の説明が判りずらい場合は、「環境変数」と「Path」をキーワードにして検索してください。
そうするといくつか説明のサイトが表示されますので、それを参照してください。


もし、パスの通っていないところに置くのなら、(例えば c:\temp\tee.cmdに置いたとします)
xcopy %Epass% %backup% /s/e/i/h c:\temp\tee.cmd %Fpass%\logs.txt
のようにフルパスでtee.cmdを指定してください。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
tee.cmdをフルパスで指定して実行してみたところ恐らく進行状況はコマンドプロンプト画面に表示はされるようになったかと思います。
「0個のファイルをコピーしました」と表示されるようになりました。

しかし、やはり「無効なパラメーターの数です」と表示されてしまい、xcopyが動かない状態です。
変数に指定しているパスには空白を入れていないのです。
xcopy %Epass% %backup% /s/e/i/h/y c:\users\[アカウント名]\desktop\xcopy\tee.cmd %Fpass%\logs.txt
変数を「”」で囲みましたが動きませんでした。

お礼日時:2018/08/15 11:53

下記URL(vector)に tee.cmdがあります。


https://www.vector.co.jp/soft/winnt/util/se42602 …

tee.cmd自体はバッチファイルなのであなたの方で自由に変更可能です。

xcopy %Epass% %backup% /s/e/i/h tee.cmd %Fpass%\logs.txt
のように使います。(tee.cmdはパスの通ったところに置いていくことが前提)
(こちらで動作確認もしました)
なお、xcopy のオプションは /Y(上書き時確認メッセージを表示しない)を付加したほうが良いでしょう。
この回答への補足あり
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ご教授いただいたバッチファイルまだ確認できていませんが確認させていただきます。

また、コマンドオプションのご指摘ありがとうございます。
確かに検証で実施した際、隠しファイルの上書き確認があってコピーが進まなかったので追記させていただきます。

お礼日時:2018/08/15 10:36

「進行バーみたいなの」は無理。


echo を on にしてみましょう。
コピーされている状況が画面いっぱいに表示されますよ。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
echo onにしてもlogファイルを出力されている為、コピー状況がでません。
実行した実績を残したいのでlogファイルの出力は必須にしたいと考えています。

お礼日時:2018/08/14 16:18

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

このQ&Aを見た人はこんなQ&Aも見ています