为什么 awk 中的“1”打印当前行?

2023-12-07

In 这个答案,

awk '$2=="no"{$3="N/A"}1' file

被接受了。请注意1在 AWK 脚本的末尾。答案的作者在评论中说

[1 是]一种显示当前行的神秘方式。

我很困惑。这是如何运作的?


In awk,

Since 1总是评估为true,执行默认操作{print $0},因此打印存储在中的当前行$0

So, awk '$2=="no"{$3="N/A"}1' file相当于和简写

awk '$2=="no"{$3="N/A"} {print $0}' file

Again $0是默认参数print,所以你也可以写

awk '$2=="no"{$3="N/A"} {print}' file

事实上,您还可以使用任何非零数字或任何始终评估为的条件true代替1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 awk 中的“1”打印当前行? 的相关文章

  • awk 比较多个文件

    我有2个文件 file1 1 apple 2 mango 3 banana 44 orange file2 1 apple 22 31 xyz 2 man 3 banana 44 oran 44 orange 我需要使用第 1 列和检查第
  • Bash:循环遍历字符串数组后无法读出带空格的字符串

    我正在使用循环读取数组的内容 该数组包含名为 music 的目录层次结构中的所有目录和文件 内容是 find 命令先前输出的字符串 这个想法是根据流派 艺术家和标题将 directory contents 中每个数组元素的完整目录路径分成子
  • 如何使用 bash 显示具有两个子文件夹的文件夹?

    我通过 Cygwin 使用 bash 我有一个大文件夹 a 有很多子文件夹 b 这些子文件夹各有一个或两个子文件夹 c 我想找到所有有两个子文件夹 c 的子文件夹 b 并输出它们 结构如下 a b1 c1 b2 c1 c2 b3 c1 c2
  • git 别名中的 AWK 语句

    我正在尝试创建一个 git 别名来以特定格式打印日志中的所有拉取请求 但是 我在使用 AWK 删除双空格时遇到问题 这是使用以下命令的 git log 的输出 git log merges grep pull request pretty
  • 协助 awk/bash 捕获内存差异

    我正在尝试从以下文件中提取以下输出 xr lab show clock Thu Sep 19 14 38 02 812 WIB 14 38 02 893 WIB Thu Sep 19 2019 xr lab xr lab xr lab sh
  • Bash + sed/awk/cut 删除第 n 个字符

    我试图删除每行的第 6 7 和第 8 个字符 下面是包含文本格式的文件 实际输出 cat test 18 40 12 172 16 70 217 UP 18 42 15 172 16 70 218 DOWN 格式化后如下所示 cat tes
  • sed/awk/bash 用外部文件内容替换两个字符串之间的文本

    我正在编写一个脚本 命令 它将采用 inputFile1 在其中查找特定的开始和结束字符串 并替换它们之间的所有文本 包含 inputFile2 的完整内容 理想情况下 但不是强制性的 这应该不需要转义特殊字符即可工作 因此我可以将字符串放
  • 如何添加百分比列

    我想计算每行中所有行中的值的百分比并将其添加为另一列 输入 分隔符为 t 1 10 2 10 3 20 4 40 添加第三列的所需输出显示基于第二列中的值计算的百分比 1 10 12 50 2 10 12 50 3 20 25 00 4 4
  • awk 返回两个变量

    现在这就是我正在做的事情 ret ls la awk print 3 9 usr echo ret awk print 1 fil echo ret awk print 2 问题是我没有运行ls我正在运行一个需要时间的命令 因此您可以理解其
  • awk 每个文件后换行

    使用此脚本 每个字段都会根据当前文件的最长单词打印出来 但需要每个文件都有一个换行符 如何才能实现这一目标 awk BEGIN ORS n FNR NR a i 0 if length 0 gt length max max 0 l len
  • 选择多个模式的 awk 代码

    这是我的输入文件 比如modified txt r4544 n479826 2012 08 28 07 12 33 0400 Tue 28 Aug 2012 1 line Changed paths M branches 8 6 0 con
  • 使用 BASH 和 AWK 创建 HTML 表

    我在创建 html 表来显示文本文件中的统计信息时遇到问题 我确信有 100 种方法可以做得更好 但这里是 以下脚本中的注释显示了输出 bin bash function getapistats curl s http api exampl
  • 在linux中将包含word的行从一个文件复制到另一个文件

    我想复制包含某些单词的行file1 to file2 Suppose file1 ram 100 ct 50 gopal 200 bc 40 ravi 50 ct 40 krishna 200 ct 100 file2应该只有包含 ct 的
  • awk 反转行和单词

    我对编程语言之类的东西很陌生 所以我必须用 awk 反转文件中的所有行以及这些行中的所有单词并将其打印出来 要反转的 File1 aa bb cc foo 做为 File1 的输出打印应该是这样的 就像 foo 一样 cc bb aa 我在
  • 使用 awk 处理多个文件

    我必须使用 awk 处理大量 txt 文件 每个文件 1600 万行 我必须阅读例如十个文件 File 1 en sample 1 200 en n sample 2 10 en sample 3 10 File 2 en sample 1
  • 如何使用管道字符分隔符分隔字段

    我知道这个问题已经被问过 但我发现没有一个解决方案对我有用 我有一个程序 其输出如下 COUNT 293 1 lps 我对第二个字段感兴趣 但是这些尝试都没有成功 spawn 1 cut d f2 spawn 1 cut d f2 spaw
  • 在 bash 中将 kB 和 GB 转换为 MB

    我使用 awk 和 sed 来获取表中的分区列表及其大小 我想用它来计算各个表的每日增量 这是我的输出 现在我正在努力将所有大小转换为 MB 匹配第二个字段中的数字并根据 MB 或 GB 字符串相乘的最佳 bash 方法是什么 201706
  • 如何从 Unix 文件中删除空行

    我需要从输入文件中删除所有空白行并写入输出文件 这是我的数据如下 11216 33 1032747 64310 1 0 0 1 878 0 0 0 1 1 1 087 5 1 1 18 JAN 13 000603221321 11216 3
  • 从 shell 查找不包含特定注释的 XML 文件

    我想搜索 awk grep sed 几个 XML 文件 pom xml 文件 跳过某些文件夹 而且 第一个条件是它们必须包含标签
  • 如何使用 Bash 编写二进制文件?

    我的问题是我需要创建一个包含以下确切字节的文件 48 00 49 00 我不能使用C perl 其他脚本语言 目标是嵌入式设备 我使用 awk 尝试过 在桌面上它确实有效 awk BEGIN printf c c c c 48 00 49

随机推荐

  • Nodes() 与 DescendantNodes() 用法?

    我读到了Nodes 发出包括 sub 在内的所有节点 and DescendantNodes 相同 但以递归方式 但是 我找不到任何需要递归方式的情况 我应该什么时候更愿意与DescendantNodes over Nodes i e IE
  • PropertyPlaceholderConfigurer 与 Tomcat 和 ContextLoaderListener

    我将 PropertyPlaceholderConfigurer 与 Tomcat 和 ContextLoaderListener 一起使用 这有效 硬编码属性文件的名称
  • Laravel 中的原始相关性查询。怎么处理呢?

    我目前正在将一个大项目转移到 Laravel 框架http hobbyathletes com events south america all event types all 我需要迁移我的内部搜索引擎 它使用以下查询 如果搜索一个单词
  • OpenCV内存不足

    我在 Visual C 2008 和 OpenCV 2 1 上运行以下代码 它会工作一段时间 比如 3 分钟 然后中止并显示错误 未知函数内存不足 无法分配 92610 字节 文件 ocv opencv src cxcore cxalloc
  • sizeof 应用于数组名称与指向数组第一个元素的指针

    假设我声明int v 1 2 3 4 5 我被教导说v是指向第一个元素的指针v大批 当我打电话申请时sizeof to v 它返回 20 我知道是5 sizeof int 因为数组中有 5 个元素 v 0也是指向数组中第一个元素的指针 但是
  • UItableView Swift 4 的滑动操作中不显示标题

    我在 UItableViewCell 的前导侧设置了 添加到购物车 的操作 我已经设置了背景颜色 图像和标题 下面是我的代码 available iOS 11 0 func tableView tableView UITableView l
  • 优化 Titanium 应用程序的最佳方法有哪些?

    我有一个基于钛的 iOS 应用程序 它基本上遵循我自己的 MVC 结构 它有大约 30 个视图和大量网络连接来进行 API 调用 因此 该应用程序在除 iPhone4S 之外的实际设备上似乎表现缓慢 具体来说 从多任务菜单重新启动应用程序后
  • Ansible - 跳过字典中未定义的变量

    我正在使用 ipa user 模块来设置用户 有可变密码强制新密码 对于某些用户 当 var 不在字典中时 我想在迭代中跳过它 但它总是失败 这是我的剧本中的片段 Ansible版本是2 7 task name adding ipa use
  • 如何在 Silverlight 4 上创建 PDF

    我需要在 Silverlight 4 中创建并显示 PDF 文档 PDF文档将动态生成 PDF 文档将包含纯文本和一些图像 我可以使用任何 API 来实现我的要求吗 你可以使用这个 http silverlightpdf codeplex
  • 引用函数时出现“不可分类的语句”

    我正在学习函数中的虚拟参数和局部变量 我正在使用的书中的练习之一是编写一个程序 询问用户的名字和姓氏 然后将这些名字连接在一起并打印全名 这是代码 PROGRAM name test IMPLICIT NONE Declare variab
  • 如何使用 PrimeFaces websocks 通过 Glassfish 3.1 和 JSF2 进行服务器推送

    PrimeFaces pdf 说带有服务器推送功能的 websockets 仅适用于 Jetty 但 Glassfish3 1 确实有一个带 grizzly 的 websockets 组件 文档有误吗 有人用这两个通过 websockets
  • 将 JSON 文件与 Chart.js 结合使用

    我一直在寻找chart js相关问题 但似乎没有两个开发人员就如何使用显示图表给出相同的答案chart js JSON 我正在尝试使用 JSON 文件显示图表 特别是 金额 列表及其相关标签 2017 年 1 月 图表画布显示得很好 没有控
  • jquery中有文本选择器吗?

    jquery 中有文本选择器吗 My Code
  • 在 SvelteKit 中,如果未保存用户状态,是否有办法取消 popstate 事件?

    我有一个允许用户编辑其状态的组件 这会触发一个notSaved多变的 我有一个beforeunload事件处理程序来处理重新加载和退出页面以提醒用户保存状态 但是使用 SvelteKit 使用浏览器中的后退按钮似乎不会触发beforeunl
  • R:根据多个变量的值定义不同的模式[重复]

    这个问题在这里已经有答案了 这是我所拥有的 data frame x c 0 0 0 1 1 1 y c 0 0 1 0 1 1 x y 1 0 0 2 0 0 3 0 1 4 1 0 5 1 1 6 1 1 这就是我想要的 data fr
  • .net:有没有办法从下到上读取txt文件? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在C 中使用迭代器反向读取文本文件 我想知道是否有一种方法可以从下到上读取文本文件而不会造成任何性能损失 即 readLine movenext 方法 但相反 这种事情在 net 中可能吗 为了让
  • python:utcfromtimestamp 与 fromtimestamp,当时间戳基于 utcnow() 时

    很确定这是一件容易的事 但我不明白 我当地的 TZ 目前是 GMT 3 当我从datetime utcnow timestamp 这确实比我少了3个小时datetime now timestamp 在我的流程中的另一个过程中 我采用 utc
  • 在 Magento 之外但在同一域中获取购物车内容

    我需要以某种方式使 Magento 商店中当前的购物车和客户信息可供 Magento 之外的网站的其余部分访问 例如 mysite com blog 位于 mysite com store 之外 在我的域的基础上 我运行了这段代码 但它只返
  • 重命名数据帧切片上的列未按预期执行

    我试图清理数据框中的列名 但只是清理一部分列 当尝试以某种方式替换数据帧切片上的列名称时 它不起作用 为什么呢 假设我们有以下数据框 Note 底部是可复制的代码来重现数据 Value ColAfjkj ColBhuqwa ColCouiq
  • 为什么 awk 中的“1”打印当前行?

    In 这个答案 awk 2 no 3 N A 1 file 被接受了 请注意1在 AWK 脚本的末尾 答案的作者在评论中说 1 是 一种显示当前行的神秘方式 我很困惑 这是如何运作的 In awk Since 1总是评估为true 执行默认