繁体   English   中英

无需管道即可获取单个IP地址

[英]Get single IP address without pipe

Centos7使用bash 我需要设置一个环境变量$IP 但是,设置变量的命令是通过期望|的公司系统完成的| 成为变量之间的分隔符(即,我以myIP=something|myOtherIP=something_else|envVar3=17的形式向系统传递列表)。

我正在计划IP地址始终是内部(10.xxx)的用例。 是否有任何命令可以不使用管道而仅返回我关心的一个IP地址?

hostname -i返回错误的地址(不以10开头)。 hostname -I包含正确的地址,但在七个列表中排名第二。 我可以使用hostname -Iifconfig轻松获取IP,但是它涉及管道传输到grep,然后使用regex查找以10开头的IP。我怀疑是否有任何简便的方法(老实说,我怀疑是否可能),但是我想通了,我还是要问。

这样的东西?

grep -o  "10[^ ]*"<<<`hostname -I`

作为abhishek phukan答案的替代方法,如果您始终想要列表中的第二个IP,则可以使用:

cut -f2 -d' ' <<< `hostname -I`

感谢您的精彩回答abhishek!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM