Board logo

标题: [文本处理] [分享]批处理把文本里面的中划线改成下划线 [打印本页]

作者: Batcher    时间: 2022-6-14 11:32     标题: [分享]批处理把文本里面的中划线改成下划线

【问题描述】

bizhi-0
bizhi-1
...
修改成(中划线改成下划线)
bizhi_0
bizhi_1

怎么写啊
作者: Batcher    时间: 2022-6-14 11:32

【解决方案】

test_1.bat
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "delims=" %%i in ('type "1.txt"') do (
  4.     set "str=%%i"
  5.     echo,!str:-=_!
  6. ))>"2.txt"
复制代码
test_2.bat
  1. @echo off
  2. (for /f "tokens=1,2 delims=-" %%i in ('type "1.txt"') do (
  3.     echo,%%i_%%j
  4. ))>"2.txt"
复制代码

作者: Batcher    时间: 2022-6-14 11:38

【补充提问】
如果不是文件内容,而是文件名,怎么修改?

【解决方案】

test_3.bat
  1. @echo off
  2. for /f "tokens=1,2 delims=-" %%i in ('dir /b /a-d *-*.txt') do (
  3.     ren "%%i-%%j" "%%i_%%j"
  4. )
复制代码
test_4.bat
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /a-d *-*.txt') do (
  4.     set "str=%%i"
  5.     ren "%%i" "!str:-=_!"
  6. )
复制代码

作者: linfeng_321    时间: 2022-6-14 12:26

回复 3# Batcher


    指定路径,修改哪里大佬
作者: LJY4.0    时间: 2022-6-17 19:33

回复 4# linfeng_321
修改'你的文件.txt'为路径+文件名+后缀
    @echo off
    setlocal enabledelayedexpansion
    (for /f "delims=" %%i in ('type "你的文件.txt"') do (
        set "str=%%i"
        echo,!str:-=_!
    ))>"2.txt"




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2