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

[文件操作] 文件按上级目录名命名批处理怎么写?

求一个可以按照文件夹名批量重命名的批命令

回复 1# 李道001
你说的太笼统了吧,你自己知道要干什么,别人无法理解。

TOP

回复 2# qixiaobin0715
有几百个jpg文件,需要按照文件夹名来批量命名

TOP

本帖最后由 terse 于 2021-1-2 16:00 编辑

取文件夹名 余下自己组合吧
  1. for /f "delims=" %%i in ("%cd%") do echo %%~nxi
复制代码
再加一代码吧
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in ('dir /s /b /a-d "*.jpg" 2^>nul') do (
  3.         for /f "delims=" %%a in ("%%~fnxi\..") do echo;ren "%%i"  "%%~na_%%~nxi"  
  4. )
  5. pause
复制代码

TOP

回复 4# terse

%%~fnxi这个表示什么?没有看懂,请指点一下,谢谢!

TOP

回复 5# netdzb

文件路径呗

TOP

回复 6# terse

nxi不是扩展名吗?加了个f,我都没有搜索到这个用法,这个是绝对路径的意思吗?

TOP

回复 7# netdzb
for /?
  %~fI        - 将 %I 扩展到一个完全合格的路径名

TOP

回复 4# terse


    两位老哥,这路径加在哪里,完全新手,有点懵

TOP

回复 9# 李道001


    执行4楼第2段代码的时候遇到什么报错信息了吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 10# Batcher


    @echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s /b /a-d "C:\Users\Administrator\Desktop\新建文件夹\*.jpg" 2^>nul') do (
        for /f "delims=" %%a in ("%%~fnxi\..") do echo;ren "%%i"  "%%~na_%%~nxi"  
)
pause
这样哪里错了

TOP

回复 11# 李道001


请参考Q-01观察一下哪行代码在报错:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 11# 李道001
把下面代码存为bat文件,放到图片文件夹里运行:
  1. @echo off
  2. for %%a in (*.jpg) do (
  3.     for %%b in ("%%~dpa.") do ren "%%a" "%%~nb_%%a"
  4. )
  5. pause
复制代码

TOP

返回列表