找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19001|回复: 3

[文件操作] BAT脚本怎样实现文件名等于文件夹名?

[复制链接]
发表于 2023-3-15 04:34:58 | 显示全部楼层 |阅读模式
文件夹内有多个文件夹下有对应的csv文件,想把csv文件等于文件夹名
发表于 2023-3-15 09:36:38 | 显示全部楼层
回复 1# msyimf


请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /s /a-d *.csv') do (
  4.     for %%j in ("%%i\..") do (
  5.         ren "%%i" "%%~nxj%%~xi"
  6.     )
  7. )
复制代码
发表于 2023-3-15 11:32:39 | 显示全部楼层
需求2:

这是总目录下的文件夹(很多订单号做文件名),订单号文件夹下面都有1个CSV文件夹,CSV文件夹内有多个(以中文名加上订单)的文件夹,文件夹下面都只有一个CSV文件。


要求做个BAT,BAT放在总目录里,运行后的结果
把CSV文件夹内的CSV名等于文件夹名后,复制出来放在CSV文件夹内并删除CSV级内的文件夹


代码2-1.bat
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /s /a-d "*.csv"') do (
  4.     for %%j in ("%%i\..") do (
  5.         move "%%i" "%%~dpi..\%%~nxj%%~xi"
  6.     )
  7.     rd "%%~dpi"
  8. )
复制代码
 楼主| 发表于 2023-3-16 14:53:46 | 显示全部楼层
管理员真棒
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 02:16 , Processed in 0.027355 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表