【发布时间】:2016-04-14 07:41:05
【问题描述】:
我希望能够使用批处理脚本“编辑”文件的文件夹名称。例如,如果文件夹是 20011993,我希望能够通过设置变量在任何位置添加或删除字符。一些输出示例是:
20_01_1993、2-1-1993、20-01-1993、1993。
我意识到理论上我应该能够使用分隔符和标记来做到这一点,但我需要一点帮助。
1.
此代码将删除文件的 6 个字符,但我想在文件夹中使用它...我稍后会解决这个问题
@ECHO ON
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir *.txt /b /a-d ') do (
set "name=%%~na"
copy "%%a" "C:\FolderB\!name:~0,-6!%%~xa"
)
pause
我知道我可以像 RENAME "C:\users\my profile\my word documents" "my documents" 这样重命名整个文件夹,但我只想编辑已经命名的文件夹。
2.
此代码在文件夹名称前添加一个 0。到目前为止,这就是它所能做的,但我想确定添加 0 的位置
@ECHO ON
for /D %%f in (*) do rename "%%f" "0%%f"
pause
所以我认为将 0 转换为 var,然后使用 delims 和标记来确定文件名中的位置。如果有任何帮助,我将不胜感激。
我使用的是 Windows 10 64 位。
如果这有点令人困惑,我深表歉意,我尽量简短。
【问题讨论】:
标签: windows batch-file