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

[文件操作] 当前文件夹内删除指定字符前所有内容(含字符本身)?

文件夹内有若干文件
刘德华 - 忘情水.mp3
刘天王-世上只有妈妈好.mp3
A张老板 - 小可爱的歌曲.mp3
网络小说-花千骨.txt
网络视频-花千骨.mp4

删除符号-以前所有的字符,有时候这个符号 - 前后有空格,如何实现批处理
毕竟没有老师教,自学很痛苦的

  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. cd /d "%~dp0"
  4. for /f "delims=" %%A in ('dir /a-d /b *-*') do (
  5.   set fn=%%~nxA
  6.   ren "%%~fA" "!fn:*-=!"
  7. )
  8. endlocal
  9. pause
  10. exit /b
复制代码
1

评分人数

    • 朱科技: 感谢,我还要努力学习技术 + 1
微信:flashercs
QQ:49908356

TOP

  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "tokens=1* delims=-" %%A in ('dir /a-d /b *-*') do (
  4.   for /f "tokens=*" %%C in ("%%B") do (
  5.     ren "%%A-%%B" "%%C"
  6.   )
  7. )
  8. pause
  9. exit /b
复制代码
1

评分人数

    • 朱科技: 1感谢,我还要努力学习技术 + 1
微信:flashercs
QQ:49908356

TOP

本帖最后由 qixiaobin0715 于 2021-2-6 16:29 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /a-d *-*') do (
  4. set "str=%%i"
  5. set "str=!str:* - =!"
  6. set "str=!str:*-=!"
  7. ren "%%i" "!str!"
  8. )
  9. pause
复制代码
回复 1# 朱科技

TOP

空格这样处理
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in ('dir /a-d /b *-*') do (
  3.        set fn=%%~nxi
  4.        for /f " tokens=*" %%j in ("!fn:*-=!") do ren "%%~fi" "%%~nxj"
  5. )
  6. pause
复制代码

TOP

回复 2# flashercs


    谢谢大神,好神奇哦
毕竟没有老师教,自学很痛苦的

TOP

回复 4# qixiaobin0715


        谢谢大神,好神奇哦
毕竟没有老师教,自学很痛苦的

TOP

回复 5# terse


    谢谢,我也要好好学习 了
毕竟没有老师教,自学很痛苦的

TOP

回复 4# qixiaobin0715


set "str=!str:* - =!
set "str=!str:*-=!

这2个set是单引号啊呀,不是双引号吗
毕竟没有老师教,自学很痛苦的

TOP

回复 9# 朱科技

TOP

回复 10# qixiaobin0715

大神怎么了😂
毕竟没有老师教,自学很痛苦的

TOP

本帖最后由 qixiaobin0715 于 2021-2-6 16:54 编辑

回复 11# 朱科技

你说的对,已修改,我也是初学者。

TOP

回复 5# terse


    感谢大神的代码,今天分送完了
毕竟没有老师教,自学很痛苦的

TOP

返回列表