shell获取本机IP并输出到屏幕上
#!/bin/bash
local_ips=$(/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v 172.17.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:")
local_port=9955
for element in ${local_ips}
do
echo -e "\033[40;31;5m http://${element}:${local_port} \033[0m"
done
解释下
local_ips=$(/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v 172.17.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:")
中的grep -v
就是过滤一些不需要的输出信息
这里的127.0.0.1是本机回环地址,那个172.17.0.1一般是docker0的地址,没有的可以自己注释掉。
for element in ${local_ips}
do
echo -e "\033[40;31;5m http://${element}:${local_port} \033[0m"
done
这个是因为可能服务器上有多个IP,所以遍历了下。
这里的端口号是我随便加的。
echo -e
是特殊的在控制台输出\033
代表非字符 40代表黑底,31代表红字
编码 | 颜色/动作 | 编码 | 颜色/动作 |
---|---|---|---|
0 | 重新设置属性到缺省设置 | 1 | 设置粗体 |
2 | 设置一半亮度(模拟彩色显示器的颜色) | 4 | 设置下划线(模拟彩色显示器的颜色) |
5 | 设置闪烁 | 7 | 设置反向图象 |
22 | 设置一般密度 | 24 | 关闭下划线 |
25 | 关闭闪烁 | 27 | 关闭反向图象 |
30 | 设置黑色前景 | 31 | 设置红色前景 |
32 | 设置绿色前景 | 33 | 设置棕色前景 |
34 | 设置蓝色前景 | 35 | 设置紫色前景 |
36 | 设置青色前景 | 37 | 设置白色前景 |
38 | 在缺省的前景颜色上设置下划线 | 39 | 在缺省的前景颜色上关闭下划线 |
40 | 设置黑色背景 | 41 | 设置红色背景 |
42 | 设置绿色背景 | 43 | 设置棕色背景 |
44 | 设置蓝色背景 | 45 | 设置紫色背景 |
46 | 设置青色背景 | 47 | 设置白色背景 |
49 | 设置缺省黑色背景 |