![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-30 12:19 |
共 47,813 主题排行 / 349,918 发帖 / 今日 0 篇 / 48,279 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已结]for /F问题:如何任意选取某行内容进行操作呢? |
| 可打印版本 939 / 8 |
| 第1楼 blancy | 发表于 2009-02-18 12:08 |
| 初级用户 发帖 23 积分 33 | |
|
[已结]for /F问题:如何任意选取某行内容进行操作呢? 我有一个txt文件,内容是:
a b j d m f g 请问用for /F 有没有什么办法对第1,3,5,7行操作,即可以任意选取某行内容进行操作呢? 多谢! ───────────────── 版务记录 ───────────────── 执行:HAT 操作:在帖子标题中增加搜索关键字 说明:原标题"for /F问题"不利于论坛搜索 处罚:扣除2点积分 提示:建议阅读以下帖子 {1415}提问的智慧 {7326}论坛新手必读,所有人的基本行为准则 {22703}请不要做浮躁的人 {27314}反面教材:本论坛“精彩”标题小集 {32667}愤怒:那些连标题都写不清楚的人们啊,你们醒醒吧 {32825}本版严厉整顿烂帖 ───────────────── 版务记录 ───────────────── [ Last edited by blancy on 2009-2-20 at 11:32 ] |
|
| 第2楼 5yue5 | 发表于 2009-02-18 12:48 |
| 初级用户 发帖 34 积分 69 | |
|
tokens=。。。。 @echo off
findstr /n . d:\ ff.txt ^ > d:\my.txt for /f "tokens=* " %%1 in ^ ('findstr /c:1 /c:3 /c:5 .* d:\my.txt') ^ do echo %%1 ff.txt 内容 ------------------------------- a b j d m f g -------------------- 方法2: @echo off for /f "tokens=* " %%1 in ('findstr /n .* d:\ff.txt') ^ do echo %%1 |findstr /c:1 /c:3 /c:5 [ Last edited by 5yue5 on 2009-2-20 at 13:12 ] |
|
| 第3楼 blancy | 发表于 2009-02-18 14:26 |
| 初级用户 发帖 23 积分 33 | |
Originally posted by 5yue5 at 2009-2-18 12:48: 单独使用tokens好像不行吧,我记得必须配合delims使用 但我这个文件每个字符都是换行后输入的 |
|
| 第4楼 yishanju | 发表于 2009-02-18 15:39 |
| 银牌会员 发帖 1,357 积分 1,488 | |
|
@echo off
setlocal ENABLEDELAYEDEXPANSION for /f %%i in (1.txt) do ( set /a a+=1 echo !a!|findstr /c:"1" /c:"3" /c:"5" /c:"7"&&echo %%i ) pause |
|
| 第5楼 tireless | 发表于 2009-02-18 17:52 |
| 银牌会员 发帖 1,122 积分 2,025 | |
|
[ Last edited by tireless on 2009-2-18 at 17:54 ] |
|
| 第6楼 blancy | 发表于 2009-02-19 14:37 |
| 初级用户 发帖 23 积分 33 | |
|
非常感谢tireless
有几个地方以前没用过,麻烦您解释一下好么? 1. setlocal enabledelayedexpansion 是做什么用的,必须要用吗? 2.usebackq是做什么用的,必须要用吗?看了DOS帮助,但是没看懂 3. if !n!==1 ...两个“!”表示什么 |
|
| 第7楼 tireless | 发表于 2009-02-19 14:54 |
| 银牌会员 发帖 1,122 积分 2,025 | |
|
Re 6楼 |
|
| 第8楼 blancy | 发表于 2009-02-19 16:29 |
| 初级用户 发帖 23 积分 33 | |
|
十分+非常感谢
DOS深奥之面容,我又窥见了一小斑啊 |
|
| 第9楼 HAT | 发表于 2009-02-19 17:16 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 8楼 如果有人帮你解决了问题,建议进行以下操作:
1、修改帖子标题,在标题最前面注明:[已结] 2、给正确回答问题者加分(你自己的积分不会减少)以示感谢,虽然大家来论坛是为了学习而不是为了积分,但加分聊表谢意总是或多或少能够让花费了时间和精力无私帮助你的人略感欣慰。 3、如果你是在别人的提示下自己写出了代码,请把自己的方法贴出来跟大家分享一下,也许他人可以帮你指出代码中的不足之处、告诉你如何提高执行效率等,有交流才能更快地进步。 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |