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

[文本处理] 【已解决】批处理如何删除/清除/去掉txt文本中所有的*星号

本帖最后由 hongrk 于 2016-10-16 22:04 编辑

设文件名为a.txt   要转化的字符为*  将该文本里的全部*都删掉  这样的批处理该怎么做?如果单纯在批处理里显示出来的我会,可是修改文本的就不会了。
例如:
*147**8
批处理运行后变为:
1478
数字之间没有空格
请求各位帮忙,我找了很多资料都没弄明白怎么做,因为找不到。
2

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 4
    • pcl_test: 发帖前先使用论坛搜索PB -2

我搞好了 不用麻烦各位了  OK

TOP

  1. rem win7及以上系统运行
  2. powershell -c "(gc 'a.txt') -replace '\*'"&pause
复制代码

TOP

本帖最后由 hongrk 于 2016-10-16 21:15 编辑

回复 3# pcl_test

不可以,
显示powershell 不是内部或外部命令,也不是可运行的程序或批处理文件。    我电脑是WinXP的
哎,本来是弄好了的,可是进行下一步的时候忘了备份了 然后原来找到的那地方又找不到了  我把我之前用的发出来 不过也只是大概,特殊符号少了很多,比如感叹号
@echo off
set f="a.txt"
set a=+
set b=
for /f "usebackq delims=" %%b in (%f%) do (
if not defined flag cd.>%f%&set flag=1
set v=%%b
setlocal enabledelayedexpansion
set v=%a%=%b%
echo.
endlocal
)


我去搜索看看

TOP

回复 4# hongrk


    查了几十个帖子 琢磨了一会弄出来了:
@echo off & setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
set var=%%i
set var=!var:XX=!
echo !var!>>b.txt
)
del a.txt
ren b.txt a.txt
pause

TOP

返回列表