请高手帮助解释一下这条命令,这条命令是读取电脑网关地址的
ipconfig /all >%temp%\temp.txt & for /f "tokens=13 delims=: " %%a in ('findstr /c:"Default Gateway" %temp%\temp.txt^|findstr /n .^|findstr "^1:"') do echo %%a
不懂的就是这句
^|findstr /n .^|findstr "^1:"
是什么意思,请高手帮助解释一下,感谢!
|findstr /n .^|findstr "^1:",findstr /n 表示在找到的结果每行前打印行数,findstr "^1:" 1.前面加^,表示打印1.开头的,也就是在前面已经打印行数的基础上,找出第一行。不明白为什么写得这么复杂,如果只有一张网卡或者一个网卡驱动,下面命令就可以了
for /f "tokens=1-2 delims=:" %%a in ('"ipconfig|findstr "Default""') do echo %%b
for /f "tokens=1-2 delims=:" %%a in ('"ipconfig|findstr "Default""') do echo %%b
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-07-09
^|findstr /n .^|findstr "^1:"
第一个和第二个 ^| 因为在for循环的('')中,|要用转义字符^
第三个"^1:" 在findstr的参数中查找字符用^表示以后面紧跟的字符开头,也就是以1:开头的行.
第一个和第二个 ^| 因为在for循环的('')中,|要用转义字符^
第三个"^1:" 在findstr的参数中查找字符用^表示以后面紧跟的字符开头,也就是以1:开头的行.