用Windows脚本代码实现自动获取当前路径后自定义查找的三种类型和自定义三种文件夹名称;实现在当前目录下遍历查找符合类型的文件复制到自定义的文件后再把自定义的文件夹和里面的内容移动到指定的文件夹内;需要可以单独定义指定的移动的文件夹;这个指定移动的文件夹不需要弹窗输入只需要代码内和自定义文件夹那样定义就行
时间: 2024-02-20 13:57:25 浏览: 65
以下是实现您所需功能的Windows脚本代码:
```
@echo off
REM 获取当前路径
set currentPath=%CD%
REM 自定义查找的三种类型
set type1=.txt
set type2=.doc
set type3=.pdf
REM 自定义三种文件夹名称
set folder1=Folder1
set folder2=Folder2
set folder3=Folder3
REM 自定义移动的文件夹
set moveFolder=MoveFolder
REM 遍历查找符合类型的文件并复制到自定义文件夹
for /R %currentPath% %%i in (*%type1% *%type2% *%type3%) do (
copy "%%i" "%currentPath%\%moveFolder%"
)
REM 移动自定义的文件夹到指定文件夹内
move "%currentPath%\%folder1%" "%currentPath%\%moveFolder%"
move "%currentPath%\%folder2%" "%currentPath%\%moveFolder%"
move "%currentPath%\%folder3%" "%currentPath%\%moveFolder%"
```
您可以根据需要自行修改自定义的文件夹名称、移动的文件夹名称以及查找的文件类型。请将以上代码保存为.bat文件,并在需要的时候运行即可。
相关问题
用Windows脚本实现自动获取当前路径后自定义查找的三种类型和自定义三种文件夹名称;实现在当前目录下遍历查找符合类型的文件复制到自定义的文件后再把自定义的文件夹和里面的内容移动到指定的文件夹内
好的,我会尽力回答你的问题。首先,你可以使用以下的 Windows 脚本来获取当前路径:
```
set currentPath=%cd%
```
接下来,你可以定义三种类型的文件,例如 txt、doc、pdf:
```
set type1=txt
set type2=doc
set type3=pdf
```
然后,你可以定义三个文件夹名称,例如 folder1、folder2、folder3:
```
set folder1=folder1
set folder2=folder2
set folder3=folder3
```
接着,你可以使用以下的代码来遍历当前目录下的所有文件,并复制符合类型的文件到自定义的文件夹中:
```
for /r "%currentPath%" %%i in (*.%type1% *.%type2% *.%type3%) do (
if not exist "%currentPath%\%folder1%" mkdir "%currentPath%\%folder1%"
if not exist "%currentPath%\%folder2%" mkdir "%currentPath%\%folder2%"
if not exist "%currentPath%\%folder3%" mkdir "%currentPath%\%folder3%"
if "%%~xi"==".%type1%" copy "%%i" "%currentPath%\%folder1%\"
if "%%~xi"==".%type2%" copy "%%i" "%currentPath%\%folder2%\"
if "%%~xi"==".%type3%" copy "%%i" "%currentPath%\%folder3%\"
)
```
最后,你可以使用以下的代码来将自定义的文件夹和里面的内容移动到指定的文件夹中:
```
if not exist "%currentPath%\destination" mkdir "%currentPath%\destination"
move "%currentPath%\%folder1%" "%currentPath%\destination\"
move "%currentPath%\%folder2%" "%currentPath%\destination\"
move "%currentPath%\%folder3%" "%currentPath%\destination\"
```
以上就是用 Windows 脚本实现自动获取当前路径后自定义查找的三种类型和自定义三种文件夹名称;实现在当前目录下遍历查找符合类型的文件复制到自定义的文件后再把自定义的文件夹和里面的内容移动到指定的文件夹内的方法。希望能对你有所帮助。
用Windows脚本代码实现自动获取当前路径后自定义查找的三种类型和自定义三种 文件夹名称;实现在当前目录下遍历查找符合类型的文件复制到自定义的文件后 再把自定义的文件夹和里面的内容移动到指定的文件夹内;根据文件类型放置定 义的文件夹内;需要可以单独定义指定的移动的文件夹;这个指定移动的文件夹 不需要弹窗输入只需要代码内和自定义文件夹那样定义就行
好的,这是一个比较复杂的问题,我会尽可能详细地回答你。首先,我需要确认你的操作系统是Windows,因为不同的操作系统可能需要不同的代码实现。
获取当前路径可以使用以下代码:
```
set current_path=%cd%
```
自定义查找的三种类型可以通过设置文件扩展名来实现,例如:
```
set file_type1=.txt
set file_type2=.docx
set file_type3=.pdf
```
自定义三种文件夹名称可以通过设置变量来实现,例如:
```
set folder_name1=Folder1
set folder_name2=Folder2
set folder_name3=Folder3
```
遍历查找符合类型的文件可以使用for命令和if命令来实现,例如:
```
for /r "%current_path%" %%i in (*) do (
if "%%~xi" == "%file_type1%" (
copy "%%i" "%folder_name1%\"
) else if "%%~xi" == "%file_type2%" (
copy "%%i" "%folder_name2%\"
) else if "%%~xi" == "%file_type3%" (
copy "%%i" "%folder_name3%\"
)
)
```
将自定义文件夹和里面的内容移动到指定的文件夹内可以使用xcopy命令和rd命令来实现,例如:
```
xcopy "%folder_name1%" "%destination_folder%\%folder_name1%\" /s /e
rd "%folder_name1%" /s /q
```
根据文件类型放置定义的文件夹内可以在复制文件时实现,例如上面的代码已经实现了这一功能。
单独定义指定的移动文件夹可以通过设置变量来实现,例如:
```
set destination_folder=C:\DestinationFolder
```
最后,将所有代码整合到一起,可以得到以下完整的脚本代码:
```
@echo off
set current_path=%cd%
set file_type1=.txt
set file_type2=.docx
set file_type3=.pdf
set folder_name1=Folder1
set folder_name2=Folder2
set folder_name3=Folder3
set destination_folder=C:\DestinationFolder
for /r "%current_path%" %%i in (*) do (
if "%%~xi" == "%file_type1%" (
copy "%%i" "%folder_name1%\"
) else if "%%~xi" == "%file_type2%" (
copy "%%i" "%folder_name2%\"
) else if "%%~xi" == "%file_type3%" (
copy "%%i" "%folder_name3%\"
)
)
xcopy "%folder_name1%" "%destination_folder%\%folder_name1%\" /s /e
rd "%folder_name1%" /s /q
xcopy "%folder_name2%" "%destination_folder%\%folder_name2%\" /s /e
rd "%folder_name2%" /s /q
xcopy "%folder_name3%" "%destination_folder%\%folder_name3%\" /s /e
rd "%folder_name3%" /s /q
```
阅读全文