• ベストアンサー

DOSコマンドでアドバイスをお願いします

よろしくお願いします。 Windows2003サーバのDOSコマンドで サーバのメンテナンス機能の開発を検討しています。 下記のロジックについて、お手数ですが、 サンプルなど頂けると助かります。 サーバ上に散在するログファイルを、 そのサーバ上の一か所のディレクトリに 集めたい、というのが要望です。 test.lstというリストファイルがあり、 そこにはサーバ上のログファイルなどが記載されています。 C:\temp\test.log C:\program files\data\data.log C:\data\execute.log ・・・ これらのファイル名をループで読み込みながら、コピーし、 「C:\Backup」にそのコピーを集めていきたいと思います。 DOSコマンドによるバッチでこれは実現可能でしょうか?。 よろしくお願いします。

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

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

上記例だと、 C:\Backup\test.log C:\Backup\data.log C:\Backup\execute.log というふうにコピーされて欲しいと言うことですよね。 for /f "delims=" %%A in (test.lst) do copy "%%A" "C:\Backup\%%~nxA" です。 文法の詳しくは、コマンドプロンプトで、for /? と打ってください。

tomato_hanako
質問者

お礼

有難うございました。 %~nx変数で、%変数の値のファイル名(拡張子あり)になるんですね。 またよろしくお願いします。

関連するQ&A