批處理新手入門導讀[視頻教程]批處理基礎視頻教程[視頻教程]VBS基礎視頻教程
[批處理文件精品]批處理版照片整理器[批處理文件精品]純批處理備份&還原驅動在線第三方下載
返回列表 發帖

[文本處理] BAT怎么批量刪除文件名兩個字符中間的內容,包含字符

文件名中有很多是帶有一些備注,備注在兩個#號直接,如何批量刪掉兩個#號及#號之間的內容,謝謝大家

有的是刪除#前面的內容,有的是刪除#后邊的內容,有的是刪除;兩個#之間的內容,求大神們分成三個批處理

TOP

本帖最后由 wujunkai 于 2020-8-5 18:28 編輯

所有的文件名都有兩個#號嗎?
假設所有文件名都帶兩個#號
  1. @echo off
  2. call:test
  3. set /P=請理解代碼邏輯后自行修改調用
  4. goto:eof
  5. :del_front
  6.     rem 文件名用%~1傳遞
  7.     rem 處理過的文件名儲存在 %new_file% 中
  8.     set "old_file=%~1"
  9.     for /F "tokens=1,2,3 delims=#" %%a in ("%old_file%") do set "new_file=%%b#%%c"
  10. goto:eof
  11. :del_middle
  12.     rem 邏輯同上
  13.     set "old_file=%~1"
  14.     for /F "tokens=1,2,3 delims=#" %%a in ("%old_file%") do set "new_file=%%a%%c"
  15. goto:eof
  16. :del_back
  17.     rem 邏輯同上
  18.     set "old_file=%~1"
  19.     for /F "tokens=1,2,3 delims=#" %%a in ("%old_file%") do set "new_file=%%a#%%b%~x1"
  20. goto:eof
  21. :test
  22.     rem 測試代碼
  23.     set "example=one#two#three.jpg"
  24.     echo 原文件名       %example%
  25.     call:del_front  "%example%"
  26.     echo 刪去第一部分   %new_file%
  27.     call:del_middle "%example%"
  28.     echo 刪去第二部分   %new_file%
  29.     call:del_back   "%example%"
  30.     echo 刪去第三部分   %new_file%
  31. goto:eof
復制代碼
直接運行肯定不行,請修改后運行

TOP

#搞笑#今天來到公司
#搞笑#打卡第一天
#搞笑#刷馬桶
#搞笑#中午吃飯

舉例以上是四個文件夾名,想批量刪掉“#搞笑#”。兩個#號中間不一定有多少字符,有多有少。

TOP

回復 4# ColorRazer


舉例4.bat
  1. @echo off
  2. for /f "tokens=1,* delims=#" %%i in ('dir /b /ad #*#*') do (
  3.     ren "#%%i#%%j" "%%j"
  4. )
復制代碼
【批處理在線視頻分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公眾號、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我幫忙寫的代碼不需要付錢,不用找我要支付寶或微信賬號。如果一定要給,請到微信群給大家發紅吧。

TOP

返回列表
36选7开奖结果今天福建 江苏快三开奖结果一定 云南11选5规则模拟 快三app免费下载 新疆11选5开奖走势图 秒速赛车人工计划在线 股票指数什么意思有什么功能 股票图片 山西快乐十分直播开奖 上证指数大盘走势图 云南快乐十分十一选五开奖结果 买股票最低多少钱 天津快乐10分走势图下载 贵州快三开奖结果快 青海11选5昨日走势图 江苏快三开奖结果今天3 江西11选5单期在线计划