Board logo

标题: [文本处理] 【已解决】批处理如何删除最后一个字符? [打印本页]

作者: dnvplj    时间: 2019-3-24 09:21     标题: 【已解决】批处理如何删除最后一个字符?

本帖最后由 dnvplj 于 2019-3-26 10:13 编辑

请问各位朋友,如何将下面代码最后一个字符 “。” 删除,多谢了。

一、文件名及路径
C:\Soft\Sf.ini

二、全部文件内容
[Cupy]
ITEM=计算机,已系统安装。

三、删除后的内容
[Cupy]
ITEM=计算机,已系统安装
作者: Batcher    时间: 2019-3-24 22:21

  1. sed -i "s/。$//" "C:\Soft\Sf.ini"
复制代码
http://bcn.bathome.net/s/tool/index.html?key=sed
作者: dnvplj    时间: 2019-3-25 08:35

回复 2# Batcher

复制代码后,保存BAT.BAT文件,运行“BAT.BAT文件,没删除“ 。”了。
作者: Batcher    时间: 2019-3-25 09:27

回复 3# dnvplj


代码保存为 C:\test.bat
打开一个CMD窗口,执行命令:
C:\test.bat

这样可以看到详细的报错信息或者线索。如果自己看不懂,就发出来大家一起看看。
作者: dnvplj    时间: 2019-3-25 10:52

回复 4# Batcher
运行后提示,见下图。
作者: Batcher    时间: 2019-3-25 12:28

回复 5# dnvplj


    点击2楼那个链接,下载sed放到bat同一个文件夹下。
作者: dnvplj    时间: 2019-3-26 08:35

回复 6# Batcher
能一行代码解决吗,不想使用其他的。
作者: Batcher    时间: 2019-3-26 09:15

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. cd /d "C:\Soft"
  4. (for /f "delims=" %%i in ('type "Sf.ini"') do (
  5.     set "str=%%i"
  6.     echo !str:。=!
  7. ))>"Sf.ini.tmp"
  8. move /y "Sf.ini.tmp" "Sf.ini"
复制代码

作者: dnvplj    时间: 2019-3-26 10:12

回复 8# Batcher

谢谢,问题解决了。




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