标题: [文本处理] 【已解决】批处理如何删除文件夹(包括子文件夹)名称的前几个字符 [打印本页]
作者: wzf1024 时间: 2016-3-15 23:55 标题: 【已解决】批处理如何删除文件夹(包括子文件夹)名称的前几个字符
本帖最后由 pcl_test 于 2016-7-22 20:58 编辑
如题,想删除文件夹名称前面2个字符,有段代码能实现当前文件夹名称,但不能操作子文件夹名,哪位大侠帮忙改一下,万分感激啊:- @ECHO OFF&Setlocal EnableDelayedExpansion
- :1
- set /p z=s输入去掉字符个数(要删除前面若干字符输入正数如2,要保留后面若干字符输入负数如-2):
- set /a y=1%z%1||goto 1
- for /d %%i in (*) do (set a=%%i
- set b=!a:~%z%!
- ren "%%i" "!b!"
- )
- pause
复制代码
作者: happy886rr 时间: 2016-3-16 08:28
本帖最后由 happy886rr 于 2016-3-16 10:15 编辑
回复 1# wzf1024 - @echo off&setlocal enabledelayedexpansion
- :main
- cls
- set /p num=请输入去掉的字符数:
- set /a y=1!num!||goto main
- for /f "delims=" %%i in ('dir /ad /b /s') do (
- set /a i+=1
- set f!i!=%%i
- set n!i!=%%~ni
- )
- for /l %%i in (!i! -1 1) do (
- set a=!f%%i!
- if "!n%%i:~%num%!"=="" (
- echo 目录:“!f%%i!”再去就没名字了
- ) else (
- ren "!f%%i!" "!n%%i:~%num%!"
- )
- )
- echo 恭喜你,执行完毕!
- pause>nul
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |