写一个bat脚本,将指定文件夹下的所有文件名中最前面加一个数字1
时间: 2024-03-31 07:33:53 浏览: 19
好的,以下是将指定文件夹下的所有文件名中最前面加一个数字1的bat脚本:
```
@echo off
setlocal enabledelayedexpansion
set /p folder=请输入文件夹路径:
for %%i in ("%folder%\*.*") do (
set "filename=%%~ni"
set "extension=%%~xi"
ren "%%i" "1!filename!!extension!"
)
echo 执行完毕!
pause>nul
```
将以上代码保存为一个以`.bat`为后缀的文件,双击运行即可。在输入文件夹路径后,脚本会遍历该文件夹下的所有文件,并将每个文件名最前面加上数字1,例如原来的文件名为`test.txt`,执行后的文件名为`1test.txt`。执行完毕后会弹出一个提示框,按任意键即可关闭。
相关问题
写一个bat脚本,将指定文件夹下的所有文件名中.前面的部分全部替换为指定的字符串
好的,以下是一个示例的bat脚本:
```
@echo off
setlocal enabledelayedexpansion
set "folder_path=C:\your\folder\path"
set "new_prefix=new_prefix"
for %%f in ("%folder_path%\*.*") do (
set "filename=%%~nf"
set "extension=%%~xf"
set "new_filename=!new_prefix!%%~xf"
ren "%%f" "!new_filename!"
)
echo Done.
```
将上面的代码保存为一个扩展名为 `.bat` 的文件,双击运行即可。
在代码中,你需要修改 `folder_path` 变量为指定的文件夹路径,将 `new_prefix` 变量改为你想要的新前缀。脚本会遍历文件夹下的所有文件,将文件名中的旧前缀替换为新前缀,并将文件名重命名为新的名称。
写一个bat将当前文件夹下非文件夹的文件名修改为文件名后面加上创建时间,
可以使用以下的批处理命令来实现:
```
@echo off
for %%f in (*) do (
if not %%~df == %cd% (
set "datetime="
for /f "usebackq delims=" %%a in (`wmic datafile where "name='%%f'" get creationdate ^| findstr /r "^[0-9]"`) do set "datetime=%%a"
if defined datetime (
set "filename=%%~nf_!datetime:~0,4!!datetime:~4,2!!datetime:~6,2!_!datetime:~8,2!!datetime:~10,2!!datetime:~12,2!%%~xf"
ren "%%f" "!filename!"
)
)
)
```
上面的代码会循环当前文件夹下的所有文件,排除文件夹,并为每个文件名添加创建时间。具体地,它会使用 WMIC 命令获取文件的创建时间,然后将其格式化为“YYYYMMDD_HHMMSS”的形式,并将其添加到文件名的末尾。最后,使用 ren 命令将原始文件名更改为新的文件名。请注意,此脚本仅在 Windows 系统上运行。