标题: [文件操作] 当前文件夹内删除指定字符前所有内容(含字符本身)? [打印本页]
作者: 朱科技 时间: 2021-2-5 19:13 标题: 当前文件夹内删除指定字符前所有内容(含字符本身)?
文件夹内有若干文件
刘德华 - 忘情水.mp3
刘天王-世上只有妈妈好.mp3
A张老板 - 小可爱的歌曲.mp3
网络小说-花千骨.txt
网络视频-花千骨.mp4
删除符号-以前所有的字符,有时候这个符号 - 前后有空格,如何实现批处理
作者: flashercs 时间: 2021-2-5 20:52
- @echo off
- setlocal EnableDelayedExpansion
- cd /d "%~dp0"
- for /f "delims=" %%A in ('dir /a-d /b *-*') do (
- set fn=%%~nxA
- ren "%%~fA" "!fn:*-=!"
- )
- endlocal
- pause
- exit /b
复制代码
作者: flashercs 时间: 2021-2-5 21:02
- @echo off
- cd /d "%~dp0"
- for /f "tokens=1* delims=-" %%A in ('dir /a-d /b *-*') do (
- for /f "tokens=*" %%C in ("%%B") do (
- ren "%%A-%%B" "%%C"
- )
- )
- pause
- exit /b
复制代码
作者: qixiaobin0715 时间: 2021-2-5 23:22
本帖最后由 qixiaobin0715 于 2021-2-6 16:29 编辑
- @echo off
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b /a-d *-*') do (
- set "str=%%i"
- set "str=!str:* - =!"
- set "str=!str:*-=!"
- ren "%%i" "!str!"
- )
- pause
复制代码
回复 1# 朱科技
作者: terse 时间: 2021-2-6 02:42
空格这样处理- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /a-d /b *-*') do (
- set fn=%%~nxi
- for /f " tokens=*" %%j in ("!fn:*-=!") do ren "%%~fi" "%%~nxj"
- )
- pause
复制代码
作者: 朱科技 时间: 2021-2-6 10:22
回复 2# flashercs
谢谢大神,好神奇哦
作者: 朱科技 时间: 2021-2-6 10:23
回复 4# qixiaobin0715
谢谢大神,好神奇哦
作者: 朱科技 时间: 2021-2-6 10:24
回复 5# terse
谢谢,我也要好好学习 了
作者: 朱科技 时间: 2021-2-6 10:29
回复 4# qixiaobin0715
set "str=!str:* - =!
set "str=!str:*-=!
这2个set是单引号啊呀,不是双引号吗
作者: qixiaobin0715 时间: 2021-2-6 16:30
回复 9# 朱科技
作者: 朱科技 时间: 2021-2-6 16:37
回复 10# qixiaobin0715
大神怎么了😂
作者: qixiaobin0715 时间: 2021-2-6 16:52
本帖最后由 qixiaobin0715 于 2021-2-6 16:54 编辑
回复 11# 朱科技
你说的对,已修改,我也是初学者。
作者: 朱科技 时间: 2021-2-6 19:26
回复 5# terse
感谢大神的代码,今天分送完了
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |