【windows】【cmd】批处理获取ip到剪切板

获取当前ip到剪切板

客户端开发远程调试每次都需要获取机器的ip,然后手动填写,较为麻烦,因此简单做了一个可以获取ip到剪切板当中的批处理脚本,可以获取系统当前ip到剪切板中。

[toc]

获取ip

获取ip的命令有多种,最终实现就是只要能打印出当前系统ip的命令都可以。

  • ipconfig
  • route print

以下两个脚本就是从上述两个命令当中获取ip地址:

ipconfig

1
2
3
4
5
6
7
@echo off

for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr ^^IPv4') do (set IP=%%a)

echo %IP%

pause

route print

1
2
3
4
5
6
7
@echo off

for /f "tokens=4" %%a in (' route print ^| findstr 0.0.0.0.*0.0.0.0 ^| findstr /v "默认" ') do (set IP=%%a)

echo 你的局域网IP是: %IP%

pause

for /f的用法:

For命令语踞饽参数F中,最难理解的就是DelimsTokens两个选项,本文简单的做一个比较和总拮。
For /f”常用来解析文本,读取字符串。分工上,delims负责切分字符串,而tokens负责提取字符串。如果把字符串当作蛋糕,Delims像刀子,用来切蛋糕,tokens像叉子,用来取切好的蛋糕。

powershell

1
(ipconfig|select-string "IPv4"|out-string).Split(":")[-1]

输入到剪切板

剪切板的关键字为:clip

使用 clip \? 可以查看帮助

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
c:\windows\system32>clip /?

clip

描述:
将命令行工具的输出重定向到 windows 剪贴板。这个文本输出可以被粘贴
到其他程序中。

参数列表:
/? 显示此帮助消息。

示例:
dir | clip 将一份当前目录列表的副本放入 windows 剪贴板。

clip < readme.txt 将 readme.txt 的一份文本放入 windows 剪贴板。

c:\windows\system32>

结合以上两个命令,脚本稍微修改一下就能实现获取ip到剪切版的功能。

完整脚本

1
2
3
4
5
6
7
8
9
10
11
12
@echo off

for /f "tokens=4" %%a in (' route print ^| findstr 0.0.0.0.*0.0.0.0 ^| findstr /v "默认" ') do (set IP=%%a)

echo 你的局域网IP是: %IP%

echo %IP% | clip

pause

@rem 或者使用定时
@rem timeout /t 5

【windows】【cmd】批处理获取ip到剪切板
https://hodlyounger.github.io/A_OS/Windows/cmd/【windows】【cmd】获取IP到剪切板/
作者
mingming
发布于
2023年10月27日
许可协议