【发布时间】:2015-03-11 23:13:44
【问题描述】:
我对批处理编程很陌生,我想删除文件名中的最后一个字符。
10_myfile_12345_6789.txt
11_myfile_12345_0987.txt
我想删除文件名的最后 4 位数字,我该怎么做?
我试过了
@echo off
setlocal enabledelayedexpansion
set X=3
set FOLDER_PATH=
pushd %FOLDER_PATH%
for %%f in (*) do if %%f neq %~nx0 (
set "filename=%%~nf"
ren "%%f" "!filename!%%~xf"
)
popd
PAUSE
但它会删除第一个和最后一个字符,我也只在这里看到过这个,我仍然很困惑这是如何工作的
【问题讨论】:
-
什么语言。你试过什么?
-
我已经编辑了我的帖子,我在 dos 上运行它
-
@XanderVane 您是否要删除文件扩展名?还是您要删除文件扩展名前的四个字符?例如 -
10_myfile_12345_6789.txt应该变成10_myfile_12345_6789还是10_myfile_12345_.txt? -
@unclemeat 我试图删除文件扩展名前的四个字符
-
有许多实用程序,例如 RenameMaster,可以做到这一点。为什么你不能使用其中之一?
标签: windows batch-file filenames rename