Q
獲取文件名批量
1
A
回答
1
for /f "tokens=*" %%f in ('dir /l /a-d /b *.xml') do (
for /f "tokens=1 delims=abcdefghijklmnopqrstuvwxyz" %%n in ("%%~nf") do (
echo File: %%~nxf = Number %%n
)
)
使用非數字字符作爲分隔符在for
命令刪除名字的他們。文件列表以小寫形式檢索,以限制列表中的分隔符數量。
0
如果模式與您的問題相同(3個字符,4位數,2個字符),請使用下面的代碼,如果您有其他標準可幫助您更好地通知您。
@echo off
@title Get Part of filename batch
@color 0a
setlocal EnableDelayedExpansion
for %%A in ("*.xml") do (
REM Set Filename
set "FileFull=%%~nxA"
REM Set Number, offset equal 3 (skip 3 first characteres), length equal 4 (four characteres)
set "FileNumber=!FileFull:~3,4!"
echo !FileNumber!
)
pause
exit
0
@ECHO OFF
SETLOCAL
FOR /f "delims=" %%a IN (
'dir /b /a-d "ppp*.xml" '
) DO (
SET "number="
SET "name=%%a"
CALL :process "%%a"
)
GOTO :EOF
:notnum
IF DEFINED number GOTO show
:num
SET "name=%name:~1%"
:process
IF NOT DEFINED name GOTO show
if "%name:~0,1%" lss "0" GOTO notnum
if "%name:~0,1%" gtr "9" GOTO notnum
SET "number=%number%%name:~0,1%"
GOTO num
:show
ECHO file %1 --^> %number%
GOTO :eof
這應該提取和顯示的數字部分。您可能希望更改文件匹配掩碼。我只是用ppp*.xml
我的測試
相關問題
- 1. 批量讀取文件名
- 2. 獲取未知的文件名批量壓縮文件
- 3. PHP&FTP:獲取最新批量文件
- 4. 批處理文件獲取文件名並將其重命名
- 5. 批量重命名文件
- 6. 批量重命名文件
- 7. 重命名批量文件
- 8. 批量重命名文件
- 9. 批處理文件 - 從目錄獲取文件名並保存爲變量
- 10. 批量讀取文件
- 11. 批量重命名文件擴展名
- 12. 批量重命名文件名爲「.csv」
- 13. 批量重命名文件變量
- 14. 按批號獲取文件列表並批量推送
- 15. 命令獲取批處理文件中的選定文件名
- 16. 從批處理文件中獲取批處理文件的服務器名稱
- 17. 從變量中批量提取路徑和文件名
- 18. Windows批量重命名文本文件
- 19. 從變量獲取文件名
- 20. 在變量中獲取文件名
- 21. 批量讀取和重命名文本文件的問題?
- 22. 批量/ vbs讀取文本文件
- 23. 獲取文件名
- 24. 獲取文件名
- 25. 獲取文件名
- 26. 基於文件名的批量刪除
- 27. 批量重命名文件夾
- 28. 使用Bash批量重命名文件
- 29. PowerShell命令批量重命名文件
- 30. .7k文件批量重命名
總是在3char + 4digits + 2char格式? –
它可能會出現超過4位數字並以2個字符結尾。 – vaibinewbee