出作为多年的IT工作者,本来批处理没什么好说的。
算不上专家,但在小圈子里面可以算是个行家。
起源是一个同事问我,批处理里面如何获取另个命令的输出。
当时想都没想,两种方法:
1.FOR 循环,一行一行处理(FOR /F ["options"] %variable IN ('command') DO command [command-parameters])。
2.绕着弯的干,先重定向输出到文件,再读取(这很可能还得再用for 读取文件,set /p str=<a.txt倒是相对少见)
个人性格比较谨慎,说完之后我就google了一遍,看到大多数的结果都是我回答的第一点,我就放心了。
然后我就想起来了还有管道这回事,比如:
>dir d:\ /s /b | find ".log"
这也是实现了部分要求,多。为什么是部分,因为这种方式无法保存到环境变量中(不信你set试试),但却可以直接传给下一个步骤的命令进行处理。