[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样按照数字把图片排序?

A(1).jpg
A(2).jpg
A(3).jpg
A(4).jpg
B(1).jpg  
B(2).jpg
B(3).jpg
B(4).jpg



A(1).jpg
B(1).jpg  
A(2).jpg
B(2).jpg
A(3).jpg
B(3).jpg
A(4).jpg
B(4).jpg

我文件夹有8张图,原本是上面的排序方式,批处理怎样把它变成下面的排序方式。前面的命名不一定是字母。

回复 2# Batcher


    这个我知道,但我想实现的是如上我所说的效果看看行不行,是实现到文件夹内看得见,而不是在控制台看见输出

TOP

回复 4# xczxczxcz


    能实现效果吗,在文件夹看得到图片的排序变了,而不是在控制台看到输出而已。

TOP

回复 7# Batcher

好的,琢磨了一阵子采用了重命名的方法了

::  用于图片文件命名 :  *** (n).jpg 和 (n)_*** (n).jpg  两种命名的切换

@echo off
:cho
echo\
echo ------1.增加序号前缀  *** (n).jpg  →  (n)_*** (n).jpg
echo\
echo ------2.清除序号前缀  (n)_*** (n).jpg  →  *** (n).jpg
echo\
set choice=
set /p choice= 请输入对应序号并按回车:
if not "%choice%"=="" set choice=%choice:~0,1%
if /i %choice%==1 goto add
if /i %choice%==2 goto clear
echo 选择无效,请重新输入
echo\
goto cho

:clear
for /f "delims=" %%a in ('dir /b /a-d *.jpg') do (for /f "tokens=1* delims=_" %%i in ("%%a") do ren "%%a" "%%j")
goto :eof

:add
for /f "delims=" %%a in ('dir /b /a-d *.jpg') do (for /f "tokens=2 delims=()" %%m in ("%%a") do ren "%%a" "(%%m)_%%a")
goto :eof

TOP

返回列表