标题: [文件操作] (已解决)批处理如何获取/提取文本每一行各列的内容? [打印本页]
作者: heiben 时间: 2014-9-29 17:42 标题: (已解决)批处理如何获取/提取文本每一行各列的内容?
本帖最后由 pcl_test 于 2016-5-12 19:51 编辑
任务:
本人准备使用wmiexec进行内网主机基线的批量执行,问题却出在不知道该如何读取文件内的信息比方说ip.txt的内容如下:
192.168.1.1 admin1 passwd1
192.168.2.1 admin2 passwd2
192.168.3.1 admin3 passwd3
192.168.4.1 admin4 passwd4
192.168.5.1 admin5 passwd5
应该如何只将第一行的第一列作为参数%%i 第一行第二列作为%%j,第一行第三列作为%%k.
在使用for /f "tokens=1 delims= " %%i in (a.txt) do echo %%i 显示的却是:
192.168.1.1
192.168.2.1
192.168.3.1
192.168.4.1
192.168.5.1
请问我该如何获取第一行的内容,并将其第一列,第二例,第三列依次赋值。如只将192.168.1.1赋值为%%i,而不是整整第一行都赋值成%%i
我原本的构想是脚本能循环读取每一行的第一列为IP地址,第二列为用户名,第三列为密码然后传送给wmiexec。请为该如何编写。。。
不是全要,我是想实现将第一行的第一列192.168.1.1作为参数一,第二列admin1作为参数二,第三列passwd1作为参数三。然后传给比方说是
scan.exe -ip %参数一% -u %参数二% -p %参数三% 这种形式。。然后使用for嵌套循环将ip.txt内的第二行,第三行,第四行,第五行....剩余的全部扫描完毕。。。
作者: xxpinqz 时间: 2014-9-29 17:57
- for /f "tokens=1-3" %%i in (a.txt) do echo 第一列:%%i 第二列:%%j 第三列:%%k
复制代码
作者: CrLf 时间: 2014-9-29 17:57
你得指定 tokens,举个栗子:- for /f "tokens=1-3 delims= " %%i in (a.txt) do echo 【%%i】 【%%j】 【%%k】
复制代码
作者: heiben 时间: 2014-9-29 20:18
回复 3# CrLf
不是呀。。我不是
这些全要,我是想实现第一次循环仅仅将第一行的第一列192.168.1.1作为参数一,第二列admin1作为参数二,第三列passwd1作为参数三。然后传给比方说是
scan.exe -ip %参数一% -u %参数二% -p %参数三% 这种形式。。然后使用for嵌套循环将ip.txt内的第二行,第三行,第四行,第五行....剩余的全部扫描完毕。。。
作者: heiben 时间: 2014-9-29 20:23
回复 2# xxpinqz
不是全要,我是想实现将第一行的第一列192.168.1.1作为参数一,第二列admin1作为参数二,第三列passwd1作为参数三。然后传给比方说是
scan.exe -ip %参数一% -u %参数二% -p %参数三% 这种形式。。然后使用for嵌套循环将ip.txt内的第二行,第三行,第四行,第五行....剩余的全部扫描完毕。。。
作者: CrLf 时间: 2014-9-29 21:31
- for /f "tokens=1-3" %%i in (a.txt) do scan.exe -ip %%i -u %%j -p %%k
复制代码
作者: heiben 时间: 2014-10-10 15:12
回复 6# CrLf
谢谢啊。。终于解决了。
作者: hnldwhm52 时间: 2014-10-10 15:48
xiexiexie!!
作者: 34205 时间: 2015-1-22 18:38
学习了.....................................
作者: zwh790859072 时间: 2016-5-12 14:24
楼主,怎么才能一行一行的读取文本中的内容?我还是不行
作者: gawk 时间: 2016-5-13 08:20
回复 10# zwh790859072
发个帖子,把你的测试数据和测试代码给大家看看吧。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |