卢阿。在文件中搜索字符串并打印第二列

2024-01-21

寻找解决方案来替换 Lua 中的以下命令:

grep "dhcp-range" /tmp/etc/dnsmasq.conf | awk -F "\"*,\"*" '{print $2}'

tried

for line in file:lines() do
        if line:match("([^;]*),([^;]*),([^;]*),([^;]*),([^;]*)") then
                print(line[2])
        end
end

但它不起作用。

/tmp/etc/dnsmasq.conf 看起来像这样

dhcp-leasefile=/tmp/dhcp.leases
resolv-file=/tmp/resolv.conf.auto
addn-hosts=/tmp/hosts
conf-dir=/tmp/dnsmasq.d
stop-dns-rebind
rebind-localhost-ok
dhcp-broadcast=tag:needs-broadcast

dhcp-range=lan,192.168.34.165,192.168.34.179,255.255.255.0,12h
no-dhcp-interface=eth0

这是 Lua 中的一个函数,如果您将整个文件内容传递给它,它将打印您需要的值:

function getmatches(text)
    for line in string.gmatch(text, "[^\r\n]+") do
        m,n = string.match(line,"^dhcp%-range[^,]*,([^,]+),([^,]+)")
        if m ~= nil then 
            print(m,n) 
        end
    end
end

See Lua demo https://ideone.com/sYN7ia

With string.gmatch(text, "[^\r\n]+"),访问每个文件行(根据需要调整),然后主要部分是m,n = string.match(line,"^dhcp%-range[^,]*,([^,]+),([^,]+)")实例化m与第一个 IP 和n在以以下开头的行中找到第二个 IPdhcp-range.

Lua模式细节:

  • ^- 字符串的开头
  • dhcp%-range- 文字字符串dhcp-range (a -是 Lua 中的量词,匹配 0 次或多次出现,但尽可能少,并且匹配文字-,它必须被转义。正则表达式转义是由%.)
  • [^,]*,- 0+ 个字符以外的字符,然后一个,
  • ([^,]+)- 第 1 组(m): 除以下以外的一个或多个字符,
  • ,- 一个逗号
  • ([^,]+)- 第 1 组(n): 除以下以外的一个或多个字符,.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

卢阿。在文件中搜索字符串并打印第二列 的相关文章

随机推荐

  • C# 中的流长度有限制吗?

    我需要以这种方式读取流 using HttpWebResponse response HttpWebResponse request getResponse using Stream answer response getResponseS
  • Pandas 根据函数返回单独的 DataFrame 值

    我有两个数据框 df1是地点的位置和df2是车站的位置 我试图找到一种更有效的方法来应用距离函数来查找哪些车站在一定范围内并返回车站的名称 如果距离函数是纬度差 1这是我的预期结果 df1 Lat Long 0 30 31 1 37 48
  • 如何使用 *ngIf 检查 Angular 2 模板中的空对象

    我想检查我的对象是否为空 不渲染我的元素 这是我的代码 div class comeBack up a previous info title a div 但我的代码是错误的 最好的方法是什么 这应该做你想要的 div class come
  • .NET Gridview 主题示例

    我正在寻找 net gridView 主题 css 文件 的示例 以获得网格的想法 我的网格必须具有双页式外观 底部和顶部 并且应该支持排序 通过单击标题 和移动鼠标时突出显示行 我在网上找到的唯一一款是玻璃黑 http weblogs a
  • 在SBT上使用maven插件

    有没有办法在 SBT 上使用 Maven 插件 不 sbt 确实以有限的方式支持 pom xml 通过sbt pom 阅读器 https github com sbt sbt pom reader 但我们不支持使用maven插件 它有自己的
  • 无法读取黑底白字 Data Matrix 条形码

    iOS 8 中添加了 Data Matrix 条形码支持 如果 Data Matrix 条形码是黑底白字 深色浅色 我可以使用它来读取它们 但是 它永远不会读取黑底白字 浅色深色 条形码 读起来很好 无法阅读此内容 根据 Data Matr
  • 如何格式化 Pandas 数据框的 IPython html 显示?

    如何格式化 Pandas 数据帧的 IPython html 显示 以便 数字右对齐 数字以逗号作为千位分隔符 大浮点数没有小数位 我明白那个numpy有设施set printoptions我可以在哪里做 int frmt lambda x
  • 删除 Jupyter Notebook 的每个单元格行上的播放按钮显示

    我在使用 Jupyterbook 时不小心按下了一些按钮 现在 每个单元格都会显示一个 运行此单元格 播放按钮 图标 这在视觉上会分散注意力 我找不到切换开关 命令来将其关闭 我可以把它关掉吗 您很可能已经升级了notebook打包到版本5
  • 如何获取当前小部件的偏移量

    每当用户按下屏幕时 我就尝试绘制一个小部件 目前 我通过存储小部件列表来做到这一点 当 ontapup 在手势上触发时 我将添加到小部件列表中 Widget build BuildContext context Widget draw ne
  • 路由模型绑定和软删除 - Laravel 4

    当使用软删除和路由到模型绑定时 会出现一种情况 如果注入的模型已被 软删除 则您无法查看该模型 e g 我有一个工作模型 如果我 垃圾 其中一个模型 然后打开垃圾箱并尝试查看作业模型 我会收到 404 未找到资源 我通过使用 Route b
  • 如何使用另一个板条箱中定义的宏?

    我看过一些使用以下命令创建 Python 模块的教程cpythoncrate 但构建时仍然出现错误 extern crate cpython use cpython PyObject PyResult Python PyTuple PyDi
  • F# 中可以进行函数重载吗?

    就像是 let f x log x 然后我可以将 f 应用于矩阵 向量或浮点数 我想这是不可能的 因为 F 是严格静态类型的 还有其他模式可以解决这个问题吗 Thanks 看我对这个问题的回答 具有泛型参数类型的函数 https stack
  • Node.js Stream API 泄​​漏

    在使用节点流时 我注意到几乎每个教程都会教授以下内容 Get Google s home page require http get http www google com function response The callback pr
  • Strapi Beta 带有用于电子邮件的自定义 Sendgrid 控制器代码

    Strapi beta 的结构改变了插件的架构方式 删除了 plugins 目录 插件现在保存在 node modules 目录中 我正在尝试编写一些自定义代码以在下订单后触发确认电子邮件 在以前版本的 Strapi 中 电子邮件插件目录位
  • 想要在 Twilio Studio 中使用 Whisper

    我想在 Twilio Studio 中使用 Whisper 这可能吗 现在我只使用 Twilio Studio 和 TwiML Bin 我的目标是 用户呼叫我的 Twilio 号码 将呼叫连接至支持团队电话 在开始用户 客户 和支持团队之间
  • Queryable.Any() 返回 null?

    我有一个数据库查找 例如 var configs dbData Configs Where e gt headers Contains e headerId e flag true if configs Any 其中 configs 作为
  • 如何使用 ggplot2 和线性近似拟合和绘制指数衰减函数

    我试图在只有几个时间点的数据上拟合指数衰减函数 我想使用指数衰减方程 http en wikipedia org wiki Exponential decay y y0 e r time 为了比较r数据集和因子之间 或最终的半衰期 我知道使
  • VS2015 中“DateTime”不包含“ToShortDateString”的定义

    在 VS 2015 中创建通用应用程序并尝试在共享项目中使用 DateTime 的 ToShortDateString 方法时出现以下问题 Visual Studio 2015 智能感知将此显示为错误 但应用程序运行良好 只是想知道 这是
  • 外部链接或 url 在phonegap 上不起作用

    我正在尝试使用phonegap 1 1 0 xcode4 和jqtouch 开发一个应用程序 问题是我无法打开任何外部链接 例如 如果我使用此 href 属性编写锚标记 href http www google com 运行应用程序并单击链
  • 卢阿。在文件中搜索字符串并打印第二列

    寻找解决方案来替换 Lua 中的以下命令 grep dhcp range tmp etc dnsmasq conf awk F print 2 tried for line in file lines do if line match th