我有很多名为
的文件Files_01(some text).png Files_02(some different text).png Files_03(some other text).png Files_04(totally different text).png
我正在寻找的方法是删除括号中的所有内容,以便我留下:
Files_01.png Files_02.png etc.
我尝试了以下操作,但它没有删除括号中的文字:
Ar = zeros(size(A));
count = 1;
for ii = 1 : size(A,1)
for jj = 1 : size(A,2)
for kk = 1 : size(A,3)
Ar(ii,jj,kk,:) = B{count};
count = count + 1;
end
end
end
答案 0 :(得分:4)
这就是我完成任务的方式。我从目录中读取文件对象,然后检查文件名是否包含括号。如果名称有,我用空字符串替换括号和中间的任何文本。然后调用Rename-Item并将没有括号的新文件名传递给它。
:desc
答案 1 :(得分:0)
试试这样:
@echo off
set "$ext=.png"
for /f "delims=" %%b in ('dir /b/a-d *%$ext%') do for /f "tokens=1 delims=()" %%c in ('echo %%b') do ren "%%~nb%$ext%" "%%~nc%$ext%"
答案 2 :(得分:0)
在powershell中我可能会创建这样的东西:
$myFolder = "C:\Users\Aarron\Pictures\"
Foreach ($file in Get-Childitem $myFolder\*.png)
{
$ReName = $file.basename.split("(")[0] + $file.extension
Rename-Item $file.FullName $ReName
}
......以及可能的批处理解决方案:
@Echo Off
Set "myFolder=C:\Users\Aarron\Pictures\"
For %%A In ("%myFolder%\*.png") Do Call :Sub "%%~dpA" "%%~nA" "%%~xA"
Exit/B
:Sub
Set "ReName=%~2"
Set ReName=%ReName:(=&:%
Ren "%~1%~2%~3" "%ReName%%~3"