从 awk 调用 python 脚本

2024-02-05

大多数解决方案都从 python 调用 awk。但我想反过来做。我有一个从文件中提取信息的 python 脚本。然而,所述文件名在 awk 脚本的列中引用。

如何向 python 传递参数“%s20s”、文件名并从标准输出获取输入?我想将输出添加为多列。

谢谢你的例子

Cheers


awk 变量 FILENAME 给出当前正在处理的文件的名称(如果是标准输入则为“-”)。然而,这在 BEGIN 块中不可用,但您可以使用 ARGV[1] 代替(假设您只传递一个文件名):

#!/bin/awk -f

BEGIN {
    cmd = "./myscript.py '\"%s20s\"' " ARGV[1]
    print cmd
    cmd  | getline var       
    print var
}

我用于测试的Python脚本(py3)是:

#!/usr/bin/python

import sys
print(sys.argv)

所以我得到以下输出:

/home/user1> runit.awk afile
./myscript.py "%s20s" afile
['./myscript.py', '"%s20s"', 'afile']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 awk 调用 python 脚本 的相关文章

随机推荐

  • 在 PHP 中:如何使用 include() 函数哪个参数是可变的?

    我需要将 include 函数与变量一起使用 但是 当我尝试这样做时 我遇到了一些错误 Code year POST year month POST month day POST day include Event php year yea
  • SignalR 因超过 2 个连接而失败

    我在 SignalR 中编写了一个相当简单的聊天应用程序 似乎如果我连接超过 2 个选项卡 浏览器 设备 第三个将挂起并且永远不会连接并最终导致问题 为什么我只能与 2 个用户连接 当我断开另外两个请求之一时 第三个请求就会通过 无论我使用
  • 如何使用QVector at或operator[]来获取指向元素的指针

    我很想得到一个指向QVector元素 这样我就可以在其他地方使用该对象 但是at 方法给了我一个const T 值和operator 给我一个T value 我对如何使用它们来获取指针感到困惑 以便我将使用相同的对象而不是使用复制构造函数
  • 如何在 Linux 中列出文件的前 10 行或后 10 行而不解压文件 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我有一个 bz2文件 我想列出前 10 行或后 10 行而不解压缩它 因为它太大了 我尝试过head 10 or tail 10但我看到的是胡言乱语
  • git rebase时进入vim时如何开始打字? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 使用 Powershell 5 时 当我键入git rebase i
  • 在android中集成javascript[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 警报在 Android WebView 中不起作用 https stackoverflow com questions 5271898 javascript alert not
  • HeartBleed python 测试脚本

    我碰到这个Python脚本 https gist github com takeshixx 10107280测试服务器是否存在 HeartBleed 漏洞 有人能够解释 你好 的内容 正在发送的内容以及该内容是如何构造的吗 我并不是想恶意使
  • 无法写入请求:找不到适合请求类型和内容类型的 HttpMessageConverter [application/x-java-serialized-object]

    我正在尝试向第三方服务器发送 xml 请求并期待返回 xml 响应 我在这里附上用于配置 Cnfiguration 网关和通道 自定义 Rest 模板类和要执行的测试客户端的源代码 我们有各种用于 XML Posting 的消息转换器 但尽
  • 如何在 iOS 上获取 Cognito 用户池“sub”属性

    我正在使用 Cognito 用户池授权者 无 AWS IAM 选项 无自定义编码授权者 通过 API 网关调用 Lambda 方法并识别登录 iOS 客户端的用户 在 Lambda 上 我使用从 Cognito 用户池授权者处获得的用户 I
  • 如何在 PL/pgSQL IF 语句中运行 SELECT 查询

    我正在尝试使用以下代码在 PL pgSQL IF 语句中运行 SELECT 查询 DO do DECLARE query type real arr real array 1 BEGIN IF query type 1 THEN RETUR
  • Javascript匿名函数不更新全局变量

    我在一些代码中进行了 getJSON 调用 该调用似乎没有更新全局变量 但我不明白为什么 JSON 数据加载正常 但由于某种原因 全局 EventOptions 数组未在 for 循环中更新 大写的注释指的是变量 有任何想法吗 谢谢 fun
  • 无法在外键上创建表(错误号:150)

    我看到很多同样的问题 但我无法解决我的问题 如果我运行这段代码
  • 如何设置 thymeleaf th:来自其他变量的字段值

    我有一个简单的文本输入字段 我必须在其中设置一个对象的默认值并将其最终值保存在其他对象中 以下代码不起作用 div div
  • 简单的分布式 Erlang

    我有一个简单的模块 module dist compile add 3 add From X Y gt From X Y 我正在启动两个节点 一与 erl sname foo 另一个与 erl sname bar 在我正在做的酒吧节点上 g
  • 速度较慢的 numpy.argmax/argmin 的更快替代方案

    我正在使用很多argmin and argmax在Python中 不幸的是 该功能非常慢 我已经做了一些搜索 我能找到的最好的就在这里 http lemire me blog archives 2008 12 17 fast argmax
  • Firefox 4中的Greasemonkey脚本,想更改网页上的一行代码

    好吧 我会尽量让这件事变得尽可能简单 但不会太含糊 我想更改网页上的一行代码 以防止出现预览窗格 原始代码行 div class previewpane 我想将上面的行替换为 div class previewpane previewpan
  • 文件加密与内容加密不同吗

    加密文件和加密文件内容之间有什么区别吗 如果是这样 两者该如何做 文件加密是从外部加密整个文件 例如通过在 Windows XP 资源管理器中右键单击 内容加密通常被用作文件加密的同义词 但两者是不同的 内容加密是指对文件的内容进行加密 或
  • Pandas 合并错误:MemoryError

    Problem 我正在尝试将两个相对较小的数据集放在一起 但合并会引发MemoryError 我有两个国家贸易数据汇总数据集 我试图将其合并到关键年份和国家 地区 因此需要对数据进行特殊设置 不幸的是 这使得使用concat正如这个问题的答
  • 理解非齐次 numpy 数组

    我最近开始使用 numpy 并注意到一件奇怪的事情 import numpy as np a np array 1 2 3 4 5 9 8 print a shape shape print a 1 0 在这种情况下 形状是2L 但是 如果
  • 从 awk 调用 python 脚本

    大多数解决方案都从 python 调用 awk 但我想反过来做 我有一个从文件中提取信息的 python 脚本 然而 所述文件名在 awk 脚本的列中引用 如何向 python 传递参数 s20s 文件名并从标准输出获取输入 我想将输出添加