批处理 for 加 find 命令

目录下有个1.txt文件,内容是春天在哪里。这是我自己搞的,总是不对,请指教for/f"delims="%%iin('find"春天"*.txt')do@echo%%i用... 目录下有个1.txt文件,内容是 春天在哪里。

这是我自己搞的,总是不对,请指教
for /f "delims=" %%i in ('find "春天" *.txt') do @echo %%i
用这个执行结果,
---------- 1.txt
春天在哪里

怎么会多一个--------- 1.txt的文件名呢,find命令的这个文件名有问题吧,多出十个-,如果我不要文件名显示怎么办呢?

for /f "delims=" %%i in ('find "春天" *.txt') do @echo %%i>>%%~ni.txt

用这个执行会多出两个文件一个---------- 1.txt,内容也是---------- 1.txt

另一个是 春天在哪里.txt,内容也是春天在哪里。

我想要的是这样,最后输出的文件名是1.txt,也就是原文件名输出到另个文件夹,内容是春天在哪里,怎么改呢?
for /f "delims=" %%i in ('find "春天" *.txt') do @echo %%i|find "春天"
显示是可以了,但我想把结果写入文件名与*.txt相同的文件,后面加>>%%ni.txt就没有用了,怎么办呢?
展开
 我来答
yyykkkyyyy
2010-07-15 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3268万
展开全部
既然不是象有人提问为了解决某一实际问题而是在练习批处理或者说命令,我就不就具体写这代码了,对于for /f 命令,既然in后面的集是一个命令形成的,那么,你应当在命令行把这个命令输出看一看比如 find "春天" *.txt 看它显示的是什么结果。
对for /f而言,最终是按in后面的括号里形成的文本(无论是命令集、文件集,还是字符串集;也无论是单行的还是多行的)总是按这文本每行执行一次do后面的命令的,如果无法实现你预期结果,那就或是改变前面in集的内容,或是改变do后的命令,总之是要熟悉可能用到的命令才能在for命令里把它顺利实现。
所以,如要用的命令没把握,就应当在命令行,单独去体验这命令,这样分解开来测试没问题了,组合到for命令里也就水到渠成了。另外建议到网上多看些实例。
云上他
推荐于2017-12-16 · TA获得超过3551个赞
知道小有建树答主
回答量:1499
采纳率:0%
帮助的人:787万
展开全部
问题中的情况是find指出了所找字符串的出处,因为用的是*.txt

问题补充所说的,>>%%ni.txt是在原文件内容末尾添加
楼主看下1.txt,里面的内容应该是两句 春天在哪里

下面是我写的显示没问题的批处理
--------------------------------------------------------
@echo off
for %%i in (*.txt) do findstr "春天" "%%i"
echo.
pause
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
她是我的小太阳
高粉答主

推荐于2016-05-03 · 醉心答题,欢迎关注
知道顶级答主
回答量:5.1万
采纳率:83%
帮助的人:8704万
展开全部
find指出了所找字符串的出处,因为用的是*.txt
>>%%ni.txt是在原文件内容末尾添加
find命令的这个文件名没有有问题
避免该方法可以这样操作:即重新再找一次"春天",写入文件后就没有--------1.txt
for /f "delims=" %%i in ('find "春天" *.txt') do echo %%i|find "春天"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
breakme
2010-07-15 · TA获得超过637个赞
知道小有建树答主
回答量:343
采纳率:66%
帮助的人:137万
展开全部
find命令的这个文件名没有有问题

那是告诉你是在那个文件里面找到的,
避免该方法可以这样操作:即重新再找一次"春天",写入文件后就没有--------1.txt

for /f "delims=" %%i in ('find "春天" *.txt') do echo %%i|find "春天"

参考资料: 自己的脑袋

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式