- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 Ubuntu 16.04 中,我运行了 ifconfig
并在 inet addr:MY_IP
中看到了我的外部 IP。
我试图通过这些方式将它“挖掘”到一个变量中:
ipa=$(ifconfig | grep "inet addr:\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b")
和:
ipa=$(ifconfig | grep "inet addr:\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.")
这些方法有效:
ipa=$(ifconfig | grep -Po 'inet addr:\K[^\s]+' | grep -v '^127')
和
ipa=$(ifconfig | grep -A 1 eth0 | grep -Po "inet addr:(\d{1,3}\.){3}\d{1,3}" | cut -f2 -d:)
但是我想知道,我在前 2 次尝试中错过了什么。
有没有办法将一个 grep
与 4 个组(类似于前 2 个的概念)一起使用,这确实可以在 POSIX BRE 中工作?
最佳答案
你可以替换\b
与旧式\<
尽管它似乎不是 POSIX。
另请注意交替 (a|b)
是 grep -E
特征。在 POSIX grep 中,您可以(奇怪地)反斜杠这些构造,但我会选择 grep -E
.
ipa=$(ifconfig | grep -E "inet addr:\<(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.")
虽然那里不需要单词边界;您已经知道左边的字符是冒号,右边的字符是数字。
关于inet addr 的正则表达式失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47780979/
我是集群新手。我看不出这两个选项之间的区别?我认为advertise addr被其他节点用来相互通信,listen addr被主机用来加入集群。所以我认为这两个地址永远是相同的。我说得对吗? 最佳答案
关于 Wireshark 中的过滤器,!(ip.addr == 192.0.2.1) 和 (ip.addr != 192.0.2.1) 有什么区别?检查结果时,结果不一样,我不知道为什么... 另外,
在 Ubuntu 16.04 中,我运行了 ifconfig 并在 inet addr:MY_IP 中看到了我的外部 IP。 我试图通过这些方式将它“挖掘”到一个变量中: ipa=$(ifconfig
如何做到这一点?我想知道如何在 Go 中将字符串解析为 net.Addr。如我所见,只有 CIDR、IP 和 MAC 的解析器。 最佳答案 使用 net.Resolve* 函数解析地址。函数返回满足
我正在为一个 friend 编写一个游戏(《我的世界》)的模组。为了执行 mod 的指定功能,我需要确保在特定时间内可以访问服务器,我使用 InetAddress 来执行此操作,但每次使用该命令时都会
我正在学习 C,经过大量研究(阅读 K&R 书(仍在阅读),阅读一些文章和一些关于 SO 的答案)并采取一些措施后,我在真正理解 C 中的数组和指针方面遇到了一些麻烦一路上有大量的笔记,我决定做一个小
在网上冲浪时,我发现了一个发送 GET 请求的 C++ 示例。这段代码中我无法理解的部分是为什么(请参阅粗体部分)变量 addr 是类型转换的。我知道该函数只接受某种类型。但为什么要使用一种类型然后将
当我尝试启动我的数据库时,mongodb 正在记录以下消息: 2014-08-12T08:42:17.522-0300 [initandlisten] journal dir=/www/mongodb
我有一个相当奇怪的用例,我想在发送请求之前覆盖客户端的属性 Grpc.TRANSPORT_ATTR_REMOTE_ADDR 。 在服务器端,我接收来自许多客户端的请求,并使用此属性提取它们的来源。然后
我正在尝试读取一些 xtensa 汇编代码,但被 L32R 指令难住了: 例如给定以下行: 0000 2f04 : 2f0c: ffef21 l32r a2, 2e
当我发现 Addr# 时,我最近一直在寻找各种 Haskell 怪癖,比如未装箱类型等等类型。 GHC.Prim 包是这样描述的: An arbitrary machine address assum
我想通过原始套接字发送 TCP 数据包,然后我被 tcp header 的校验和字段卡住了。由于我不知道如何找出原始套接字使用的实际IP地址,因此似乎不可能构造TCP伪 header 来计算校验和。
我在 Windows 中进行客户端开发,在 Linux 中进行服务器端开发(我以虚拟方式运行)。我的客户端套接字设置为连接到我的 linux 服务器的 inet addr(使用 localhost 似
我想通过这个函数获取页面地址。 virt_to_page(addr); 但是编译的时候出现了这个错误 Error implicit declaration of function virt_to_pa
这个问题在这里已经有了答案: Returning array declared in function returns address of local variable in C? (4 个答案)
我正在开发一个简单的程序,它将获取给定变量的内存地址,最多 64 位(unsigned long)。目前这是我的代码,但出于某种原因,编译器向我发出警告,说我的方法正在返回局部变量的地址,而这正是我想
最近在看《the shellcoder's handbook》这本书,对c的理解很深,但是最近遇到一段代码,看不懂。 这是一段代码: char a[4]; un
我一直在使用 Go 教程 here但是 main 函数的最终版本为我返回了一个错误: $ go build wiki.go # command-line-arguments ./wiki.go:97:
我可以使用 RTTI 和 Addr(Field) 获得相同的字段指针吗? 例如: TSomeClass 私有(private)的 FSomeField:整数; ... 1) MyPointer = A
我必须将这样的字符串“FE80:0000:0000:0000:0000:0000:0000:0012”转换为不带“:”的 const uchar *addr。 我尝试在没有“:”的情况下拆分字符串并像
我是一名优秀的程序员,十分优秀!