@rem 我需要的是要读取每一条的第一列信息,如下格式
 @rem
 @rem       ary,Ary Hong,,aaa@163.com,,,,
 @rem
 @rem 我是需要用户名ary,于是如下:
 @rem
 @echo off
 for /f "delims=," %%i in (users.txt) do echo %%i@rem D:\2del\tmp>LoopTxt.bat
 @rem ary
 @rem jim
 @rem lucy
 @rem lily
ary,Ary Hong,,aaa@163.com,,,,
 jim,Ary Hong,,aaa@163.com,,,,
 lucy,Ary Hong,,aaa@163.com,,,,
 lily,Ary Hong,,aaa@163.com,,,,

批处理读取文本中的每一行


参考链接:

 http://hi.baidu.com/zch11230/blog/item/125ddc8bba61fe15c8fc7aa2.html

在SharePoint迁移中,要同步新旧用户SID,但是用户太多,所以决定用批处理一行行读取导出的User.txt(每一行是一条用户信息),再针对每一条用户记录进行操作。 于是学习参考了上面大侠的一些知识。主要用到的是/f命令,

(想了下,还是整个贴到自己空间来了)

我需要的是要读取每一条的第一列信息,如下格式

       ary,Ary Hong,,aaa@163.com,,,,

我是需要用户名ary,于是如下:

@echo off

for /f "delims=," %%i in (users.txt) do ......

每一行中,各信息以“,”分隔,所以定义了 "delims=,"后,就会自动读取以“,”分隔的第一个元素了。

虽然可以读取每一行中所需要的信息,但每次执行批处理的时候都找不到记录,后来才发现时文本文件的编码在作怪,如果文件编码是ANSI,是可以读取的,如果是UniCode就无法识别了。不晓得批处理文件的所有文本处理的命令都是有这个限制的,以后得留心了。


在SharePoint迁移中,要同步新旧用户SID,但是用户太多,所以决定用批处理一行行读取导出的User.txt(每一行是一条用户信息),再针对每一条用户记录进行操作。 于是学习参考了上面大侠的一些知识。主要用到的是/f命令,

(想了下,还是整个贴到自己空间来了)

我需要的是要读取每一条的第一列信息,如下格式

       ary,Ary Hong,,aaa@163.com,,,,

我是需要用户名ary,于是如下:

@echo off
for /f "delims=," %%i in (users.txt) do ......

每一行中,各信息以“,”分隔,所以定义了 "delims=,"后,就会自动读取以“,”分隔的第一个元素了。

虽然可以读取每一行中所需要的信息,但每次执行批处理的时候都找不到记录,后来才发现时文本文件的编码在作怪,如果文件编码是ANSI,是可以读取的,如果是UniCode就无法识别了。不晓得批处理文件的所有文本处理的命令都是有这个限制的,以后得留心了。