我正在尝试打印/剪切以下命令中的最后一列
ipconfig |findstr "Default Gateway"
Q1如何在不安装cygwin等项目的情况下在Windows命令行界面中实现此目的?
另外,因为我安装了几台VMware机器,我得到了多个空的默认网关。
Q2是否可以在Windows中创建仅显示包含实际IP地址语法的最后一列/列的正则表达式。排除空列和::列。
答案 0 :(得分:1)
findstr
接受/r
选项,使字符串被视为正则表达式:
您想要获得的行以数字结尾;你可以使用以下模式:
[0-9]$
ipconfig | findstr "Default Gateway" | findstr /r "[0-9]$"
答案 1 :(得分:0)
作为Windows批处理文件:
@ECHO OFF
SETLOCAL
FOR /f "tokens=2*delims=:" %%a IN ('ipconfig^|findstr /L /c:"Default Gateway"') DO FOR /f "tokens=*" %%d IN ("%%a") DO IF NOT "%%d"=="" ECHO(%%d
GOTO :EOF
直接来自提示:
cls& setlocal& @FOR / f" tokens = 2 * delims =:" %a IN(' ipconfig ^ | findstr / L / c:"默认网关"')DO @FOR / f"令牌= *" %d IN("%a")DO @IF NOT"%d" =="" ECHO(%d