批量处理文件名,例如将文件名为DVR_2023_05_22_10_02_25_542.tar.gz改变成DVR_20230522100225542.tar.gz
时间: 2023-08-04 09:03:26 浏览: 48
可以使用以下Python代码实现:
```python
import os
# 获取当前文件夹路径
folder_path = os.getcwd()
# 遍历当前文件夹下的所有文件
for file_name in os.listdir(folder_path):
# 获取文件名和扩展名
file_prefix, file_ext = os.path.splitext(file_name)
# 替换下划线
new_file_prefix = file_prefix.replace('_', '')
# 生成新的文件名
new_file_name = new_file_prefix + file_ext
# 重命名文件
os.rename(os.path.join(folder_path, file_name), os.path.join(folder_path, new_file_name))
print('Renaming completed!')
```
该代码首先获取当前文件夹路径,然后遍历当前文件夹下的所有文件。对于每个文件,它获取文件名和扩展名,然后使用`replace`方法将下划线替换为空格。接着,将新的文件名生成,并使用`os.rename`函数重命名文件。最后,打印完成信息。
注意:该代码仅适用于文件名中的第一个下划线和第二个下划线之间包含数字的情况。如果文件名中的下划线不止两个,或者数字不在第一个和第二个下划线之间,该代码可能会出现错误。
相关问题
使用BAT批量处理文件名,例如将文件名为DVR_2023_05_22_10_02_25_542.tar.gz改变成DVR_20230522100225542.tar.gz
可以使用以下BAT代码实现:
```bat
@echo off
setlocal enabledelayedexpansion
for %%f in (*) do (
set "filename=%%~nf"
set "extension=%%~xf"
set "newfilename=!filename:_=\!"
set "newfilename=!newfilename:~0,7!!newfilename:~8,2!!newfilename:~11,2!!newfilename:~14,2!!newfilename:~17,2!!newfilename:~20,3!!newfilename:~24,3!"
ren "%%f" "!newfilename!!extension!"
)
echo Renaming completed!
pause>nul
```
该代码遍历当前文件夹下的所有文件,并对每个文件进行重命名操作。首先,它将文件名和扩展名分别保存在变量`filename`和`extension`中。然后,使用`set`命令和`!`语法将`_`替换为`\`。接下来,使用字符串切片操作将文件名中的数字提取出来,并重新组合成新的文件名。最后,使用`ren`命令重命名文件。
注意:该代码仅适用于文件名中的第一个下划线和第二个下划线之间包含数字的情况。如果文件名中的下划线不止两个,或者数字不在第一个和第二个下划线之间,该代码可能会出现错误。
使用bat方式写一段代码:代码的功能是重命名当前文件夹下的文件,删除当前文件名中数字间的下划线。例如:DVR_2023_05_22_10_02_25_542.tar.gz变成DVR_20230522100225542.tar.gz
您好,以下是符合您要求的代码:
```bat
@echo off
setlocal enabledelayedexpansion
for %%i in (*) do (
set "filename=%%~ni"
set "newname="
for /f "tokens=1-6 delims=_" %%j in ("!filename!") do (
set "newname=%%j_%%k%%l%%m%%n"
)
if defined newname (
ren "%%i" "!newname!%%~xi"
)
)
```
其中,`enabledelayedexpansion` 可以使变量在循环中能够被正确地解析。循环中,`%%i` 表示当前处理的文件名,`%%~ni` 表示文件名去掉扩展名后的部分,`%%~xi` 表示文件扩展名。接下来,将文件名中的数字和下划线进行分离,并将数字连起来赋值给 `newname` 变量。最后,使用 `ren` 命令进行重命名操作。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)