前提・実現したいこと
ファイルバックアップのWindowsバッチファイルを作成しています。
カレントディレクトリのひとつ上のフォルダ名のみ異なるディレクトリにサブフォルダを含めてファイルのコピーをしたいです。
ただし、直下ファイルはコピー対象外
(例)
カレントディレクトリ C:\Test\AAA\バッチ配置先
コピー先 C:\Test\BBB\バッチ配置先
発生している問題・エラーメッセージ
サブフォルダも含めてファイルのコピー自体はできたのですが、カレントディレクトリ直下にあるファイルもコピー対象に含まれてしまうので、こちらをコピー対象外にしたいです。
該当のソースコード
bat
rem ユーザー名取得 set user_name=%USERNAME% rem カレントディレクトリ フォルダ名取得 set THIS_PATH=%~dp0 for %%1 in ("%THIS_PATH:~0,-1%") do set FOLDER_NAME=%%~nx1 REM バックアップ情報設定 set "from_Dir=C:\Users\%user_name%\ドキュメント - コピー元\%FOLDER_NAME%" set "to_Dir=C:\Users\%user_name%\ドキュメント - コピー先\%FOLDER_NAME%" rem ファイルコピー robocopy "%from_dir%" "%to_Dir%" /S /R:0 /W:0 /NP /TEE /XJD /XJF
試したこと
robocopyコマンドの /xdオプションでカレントディレクトリを指定してみましたが、結果は同じでした。
ただし、フォルダパスの末尾にバックスラッシュなしの場合でしか指定出来ず、末尾にバックスラッシュありで指定しようとしてみましたが、コマンド実行時に弾かれてしまいます。
まだ回答がついていません
会員登録して回答してみよう