如何将整个驱动器上找到的特定文件类型移动到另一个文件夹

如何将整个驱动器上找到的特定文件类型移动到另一个文件夹

所以,

我想搬家全部JPG 文件整个驱动器(包括其他用户)到桌面上的文件夹。

CMD 中的命令是什么?

我想要将文件移动到的文件夹是 C:\Users\stefa_000\Desktop\Allt

答案1

StackOverflow 帖子 用于复制并保留重复项的 Windows 批处理文件这个答案 建议的.bat脚本有两个参数:SourcePath TargetPath。它以递归方式将所有文件从 SourcePath 及其子文件夹复制到 TargetPath,忽略目标文件夹中的文件,同时将重复项的增加计数器附加到基本名称。

::copyFlat sourcePath  TargetPath
@echo off
setlocal disableDelayedExpansion

:: Initialize and validate arguments
if "%~2" equ "" echo Error: Insufficient arguments>&2&exit /b 1
set "source=%~f1"
if not exist "%source%\" echo Error: Source folder "%source%" does not exist>&2&exit /b 1
set "target=%~f2"
if exist "%target%\" echo Error: Target folder "%target%" already exists>&2&exit /b 1

:: Do the work
md "%target%"
set /a n=0
for /r "%source%" %%F in (*) do if "%%~dpF" neq "%target%\" (
  if exist "%target%\%%~nxF" (
    set /a n+=1
    set "full=%%F"
    set "name=%%~nF"
    set "ext=%%~xF"
    setlocal enableDelayedExpansion
    copy "!full!" "!target!\!name!_!n!!ext!" >nul
    endlocal
  ) else copy "%%F" "%target%" >nul
)

相关内容