私が求めているのは、すべてのファイルをあるフォルダーから別のフォルダーに移動するバッチ ファイルであり、これを 1 日 2 回実行するタスクとしてスケジュール設定します。
移動コマンドなどは全部知っていますが、一度に1つのファイルまたはフォルダ自体であるようです
フォルダはそのまま残し、中のファイルは移動したい
ありがとう、カイル
答え1
次のスクリプトが役立つかもしれません:
@ECHO OFF >NUL
SETLOCAL enableextensions
set "folderIn=D:\test\Files In"
set "folderOu=D:\test\Files Out"
set "logFile=%folderOu%\movelog.txt"
set "logToDo=>> "%logFile%" 2>&1"
rem above line causes that moved file names will be logged to file %logFile%
rem unrem next line if you need no log
rem set "logToDo="
set /A "filesInNo=0"
for /f "tokens=*" %%# in ('dir /B "%folderIn%\*.*" 2^>NUL') do set /A "filesInNo+=1"
(
echo === %date% %time% === %filesInNo%
if %filesInNo% GTR 0 (
move /Y "%folderIn%\*.*" "%folderOu%\"
) else (
rem Nothing to copy
)
)%logToDo%
rem next line for debugging purposes only
if not "%*"=="" type "%logFile%"
ENDLOCAL
goto :eof
説明についてはrem
コメントを参照リソース(必読):
- (コマンドリファレンス)Windows CMD コマンドラインの AZ インデックス
- (追加の詳細)Windows CMD シェルのコマンド ライン構文
- (
%~#
など特設ページ)コマンドライン引数(パラメータ) - (
>>
など2>&1
特設ページ)リダイレクション