如何用 批处理 删除txt文件中指定字符串后面的所有字符
如何有txt文件,内容如下djsfkadfadf......中间N行.....dafadf00000dsfadsfdfadsf要求用批理,删除00000后面的的所有内容,...
如何有txt文件,内容如下
djsfkadfadf
......
中间N行
.....
dafadf00000
dsfadsf
dfadsf
要求用批理,删除00000后面的的所有内容,如何实现呢?
dsfadf
楼下两位,我是说用批处理实现,你们不懂什么是批处理吧 展开
djsfkadfadf
......
中间N行
.....
dafadf00000
dsfadsf
dfadsf
要求用批理,删除00000后面的的所有内容,如何实现呢?
dsfadf
楼下两位,我是说用批处理实现,你们不懂什么是批处理吧 展开
4个回答
展开全部
批处理本身实现很鸡肋,用第三方的 SED 或者 awk 吧,比如:
sed -n "1,/00000$/p" urfile
sed "/00000$/q" urfile
awk "1; $0 ~ /00000$/{exit}" urfile
将下载文件放到 c:\windos\system32\ 中,执行以上命令。
sed -n "1,/00000$/p" urfile
sed "/00000$/q" urfile
awk "1; $0 ~ /00000$/{exit}" urfile
将下载文件放到 c:\windos\system32\ 中,执行以上命令。
更多追问追答
追问
你这个好像没法用啊,你的代码中完全没有见到txt文件名啊
追答
把urfile改成你的txt文件。将txt拷贝到C:根目录,然后 “开始——运行——cmd /k pushd c:\”
执行如上命令就行了。输出的话在命令行最后面加 “> out.txt” 就可以看到效果了。另,你需加固基础知识才行,这里涉及到正则表达式,不知是否看出来了?
参考资料: http://cm.bell-labs.com/who/bwk/awk95.exe
展开全部
find获取个行数n。more 跳过n行。具体代码不想写了。。。累死了。。如果可以你去搜索。或者等别人。。不过用more多少有点。。就是行数很多的话那么就。。
追问
如果能搜到我也不用在这里问啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用frontapege或者是drw的“转换全部打开的文件”功能。按ctrl+h可以实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.txt ------ 2.txt 代码演示:
@echo off&setlocal enabledelayedexpansion
(for /f "tokens=*" %%a in (1.txt) do (
set .=%%a&set .=!.:00000=☆!
for /f "delims=☆" %%b in ('echo !.!')do echo %%b
))>2.txt
pause
@echo off&setlocal enabledelayedexpansion
(for /f "tokens=*" %%a in (1.txt) do (
set .=%%a&set .=!.:00000=☆!
for /f "delims=☆" %%b in ('echo !.!')do echo %%b
))>2.txt
pause
更多追问追答
追问
不对啊,你这个只能删除0000所在行后面的内容,我是说删掉整个txt中0000后面的内容!意思是后面和下面所有内容全都没有了!
追答
@echo off
setlocal enabledelayedexpansion
for /f "tokens=*" %%a in (1.txt) do (
set .=%%a&set .=!.:00000=☆!
if "!.!"=="%%a" (echo %%a>>2.txt) else (
echo %%a>>2.txt
pause&exit
)
)
pause
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询