for /f "delims=" %%i in ('dir /b /s "%folder_path%"') do (什么意思
时间: 2024-04-04 07:30:26 浏览: 32
`for /f` 是一个循环语句,其作用是遍历指定的文件列表或命令的输出结果。在这个命令中,`/f` 表示要使用文件或命令的输出结果作为循环的条件。
`"delims="` 表示将分隔符设置为空格,这意味着循环将处理包含空格的文件名。
`%%i` 是循环变量,每次循环都会被赋值为文件列表或命令输出的下一个文件名或行。在一个批处理文件中,`%%i` 必须用两个百分号表示。
`'dir /b /s "%folder_path%"'` 是一个命令,用于列出指定文件夹中的所有文件和子文件夹。其中,`/b` 表示只显示文件名,不显示其他信息;`/s` 表示包括子文件夹中的文件。
因此,这个循环的作用是遍历指定文件夹及其子文件夹中的所有文件,并将每个文件名赋值给循环变量 `%%i`。在循环体中,可以使用 `%%i` 变量来操作每个文件。在这个示例中,循环体中使用了 `%%i` 变量来将每个文件添加到压缩文件中。
相关问题
用Windows脚本代码写一个实现自动获取当前路径指定文件夹名称的文件按照类型(.prt、.cxp、.doc)分别移动到三个文件夹中(程序模型、工艺规程、沟通记录),然后将这三个文件夹复制到目标文件夹(工艺文件)中,并在完成复制后删除原来的文件夹,
以下是一个实现自动获取当前路径指定文件夹名称的文件按照类型(.prt、.cxp、.doc)分别移动到三个文件夹中(程序模型、工艺规程、沟通记录),然后将这三个文件夹复制到目标文件夹(工艺文件)中,并在完成复制后删除原来的文件夹的 Windows 脚本代码:
```
@echo off
set current_path=%cd%
set target_folder=%current_path%\工艺文件
set folder_name=my_folder
set model_folder=%current_path%\程序模型
set process_folder=%current_path%\工艺规程
set record_folder=%current_path%\沟通记录
if not exist %model_folder% mkdir %model_folder%
if not exist %process_folder% mkdir %process_folder%
if not exist %record_folder% mkdir %record_folder%
if not exist %target_folder% mkdir %target_folder%
for /f "delims=" %%i in ('dir /b /s "%current_path%\%folder_name%\*.prt"') do move "%%i" %model_folder%
for /f "delims=" %%i in ('dir /b /s "%current_path%\%folder_name%\*.cxp"') do move "%%i" %process_folder%
for /f "delims=" %%i in ('dir /b /s "%current_path%\%folder_name%\*.doc"') do move "%%i" %record_folder%
xcopy /E /I %model_folder% %target_folder%\程序模型\
xcopy /E /I %process_folder% %target_folder%\工艺规程\
xcopy /E /I %record_folder% %target_folder%\沟通记录\
rd /s /q %model_folder%
rd /s /q %process_folder%
rd /s /q %record_folder%
```
脚本中使用了 `cd` 命令获取当前路径,然后根据需求创建了四个文件夹,分别是程序模型、工艺规程、沟通记录和工艺文件夹。然后使用 `dir` 命令获取指定文件夹中指定类型的文件,并使用 `move` 命令将它们移动到对应文件夹中。最后使用 `xcopy` 命令将三个文件夹复制到工艺文件夹中,然后使用 `rd` 命令删除原来的文件夹。其中 `folder_name` 变量可以替换为需要获取的文件夹名称。
用Windows脚本代码写一个实现自动获取当前路径的多个自定义指定的文件夹目录下的文件按照类型(.prt、.cxp、.doc)分别移动到三个文件夹中(程序模型、工艺规程、沟通记录),然后将这三个文件夹复制到目标文件夹(工艺文件)中,并在完成复制后删除原来的文件夹,
以下是一个实现自动获取当前路径的多个自定义指定的文件夹目录下的文件按照类型(.prt、.cxp、.doc)分别移动到三个文件夹中(程序模型、工艺规程、沟通记录),然后将这三个文件夹复制到目标文件夹(工艺文件)中,并在完成复制后删除原来的文件夹的 Windows 脚本代码:
```
@echo off
set current_path=%cd%
set model_folder=%current_path%\程序模型
set process_folder=%current_path%\工艺规程
set record_folder=%current_path%\沟通记录
set target_folder=%current_path%\工艺文件
if not exist %model_folder% mkdir %model_folder%
if not exist %process_folder% mkdir %process_folder%
if not exist %record_folder% mkdir %record_folder%
if not exist %target_folder% mkdir %target_folder%
for /f "delims=" %%i in ('dir /b /s *.prt') do move "%%i" %model_folder%
for /f "delims=" %%i in ('dir /b /s *.cxp') do move "%%i" %process_folder%
for /f "delims=" %%i in ('dir /b /s *.doc') do move "%%i" %record_folder%
xcopy /E /I %model_folder% %target_folder%\程序模型\
xcopy /E /I %process_folder% %target_folder%\工艺规程\
xcopy /E /I %record_folder% %target_folder%\沟通记录\
rd /s /q %model_folder%
rd /s /q %process_folder%
rd /s /q %record_folder%
```
脚本中使用了 `cd` 命令获取当前路径,然后根据需求创建了四个文件夹,分别是程序模型、工艺规程、沟通记录和工艺文件夹。然后使用 `dir` 命令获取每个文件夹中指定类型的文件,并使用 `move` 命令将它们移动到对应文件夹中。最后使用 `xcopy` 命令将三个文件夹复制到工艺文件夹中,然后使用 `rd` 命令删除原来的文件夹。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)