awk:对字符串使用反向匹配,然后替换字符

2023-12-19

我想提取不包含的行#并删除", ;在输出中。

我的输入文件如下所示:

# ;string"1"
# string"2"; 
string"3";

Can use grep and tr获得想要的输出:

grep -v '#' FILE | tr -d ';"'  
string3

不过我想用awk.

我可以提取反向匹配awk '!/#/' FILE,但我该如何使用sub删除", ;在相同的awk命令?


您可以使用gsub对于全局替换:

awk '!/#/{gsub(/[";]/,"",$0);print}'

以下文字记录显示了这一点的实际效果,它提供了与您相同的结果grep/tr管道:

pax> echo '# ;string"1"
# string"2"; 
string"3";' | awk '!/#/{gsub(/[";]/,"",$0);print}{}'

string3

注意最后的{}在某些实现中可能没有必要awk但它可以阻止那些实现(通常是较旧的实现)中不匹配行的输出,这些实现会自动对不匹配任何规则的行执行此操作。

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

awk:对字符串使用反向匹配,然后替换字符 的相关文章

  • awk + ​​如何查找列中的重复项?

    如何查找列中的重复项 head countries lat long int code3 csv cat n 1 country latitude longitude name code 2 AD 42 546245 1 601554 An
  • 对文本文件中的行进行分组并将相应的行聚合到列

    对文本文件中的行进行分组并将相应的行聚合到列 现有文本文件 John Life John Temp John Admin Peter Life Peter Admin Matt Life Matt Admin Matt Temp 所需输出
  • 执行 tail -F 直到匹配模式

    我想做一个tail F在文件上直到匹配模式 我找到了一种使用方法awk 但恕我直言 我的命令并不是很干净 问题是我need由于某些限制 只能用一行来完成 tail n 0 F tmp foo awk W interactive if 1 E
  • 使用 join/awk/sed 合并 CSV 文件

    您能帮我找到 bash 命令 该命令会将以下 cvs 文件 template csv file1 csv file2 csv file3 csv fileX csv 加入 合并到 ouput csv 中吗 对于 template csv 中
  • 如何将包含空格的参数传递给包含 gawk match() 的脚本?

    gt gawk match foo bar junk 是一个合法的命令 我想传递参数foo bar在 shell 脚本中添加它 foobar sh其中有 bin bash gawk match 1 junk 不起作用 gt foobar s
  • 了解 OFS 在 AWK 中的工作原理

    这是后续我的问题 https stackoverflow com questions 55876705 awk ofs is not working with fs character set了解有关 AWK 中 OFS 的更多信息 我的理
  • 查找列中字段的平均值[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个这样的记录 1 11 11 T A 0 0 A 1 B 2 C 3 D 4 有 8 列 每列由制表符空格分隔 我需要的输出是这
  • 使用 awk 添加列。这个 awk 命令有什么问题?

    我想将两列添加到大约 10 000 列的文件中 我想在每行插入 nr 22 作为第一列 然后我想要将原始第一列作为第二列 然后作为第三列我想要插入第 nr NR 行 之后我想要打印其余的原始列 我想我可以用下面的 awk 行来做到这一点 a
  • 如何从 Linux 和 Solaris 上的挂载中提取 NFS 信息?

    我需要使用提取 NFS 挂载信息mount在 Linux RHEL 4 5 和 Solaris Solaris 10 系统上 由于这是 SSH 命令的一部分 因此提取需要在一行中进行 不幸的是 Linux 和 Solaris 在该行的不同部
  • 如何格式化 .CSV 文件的日期字段并在字符串字段中包含多个逗号

    我有一个 CSV 文件 file csv 其数据全部用双引号引起来 文件的示例格式如下 column1 column2 column3 column4 column5 column6 column7 Column8 Column9 Colu
  • 使用 Sed 或 Awk 进行数据转换 - 名称到标题

    我有以下格式的数据 APP OWNER hari APP AREA Work Business Area AUS APP ID 124080 APP OWNER ari APP AREA Work AUS APP ID 124345 我希望
  • 如何拆分一行并重新排列其元素?

    我在一行中有一些数据 如下所示 abc edf xyz rfg yeg udh 我想呈现如下数据 abc xyz yeg edf rfg udh 以便打印备用字段并用换行符分隔 有没有这样的衬里 下列awk脚本可以做到这一点 gt echo
  • Linux 文本文件操作

    我有一个格式的文件 a href a href a href a href 我需要选择 之后但 之前的文本 并将其打印在行尾 添加后 例如 a href http www wowhead com search Su a a a a a
  • 如何在正则表达式之后打印单词但不打印相似的单词?

    我想要一个 awk 或 sed 命令来打印正则表达式之后的单词 我想找到一个单词后面的单词 但不是看起来相似的单词 该文件如下所示 somethingsomething X Windows Icon xournal somethingsom
  • 使用正确的头打印文件名

    我想获取当前目录中的文件名 使得文件的第一行等于myWord 我想结合find type f命令与 exec选项与head 1 filename但无济于事 有没有一些聪明的 单行的解决方案来解决这个问题 您可以使用find with awk
  • 仅当重复行与模式匹配时才删除它们

    这个问题 https stackoverflow com questions 1444406 how can i delete duplicate lines in a file in unix有一个很好的答案说你可以使用awk seen
  • Awk - 计算两个文件之间的每个唯一值和匹配值

    我有两个文件 首先 我尝试获取第 4 列中每个唯一字段的计数 然后匹配第二个文件的第二列中的唯一字段值 File1 第 4 列的每个唯一值和 File2 第 2 列包含我需要在两个文件之间匹配的值 所以本质上 我试图 gt 如果 file2
  • 如何将查找和替换限制为 CSV 中的一列?

    我有一个 4 列 CSV 文件 例如 0001 fish animal eats worms I use sed对文件进行查找和替换 但我需要将此查找和替换限制为仅在第 3 列中找到的文本 如何让查找和替换仅发生在这一列上 您确定要使用se
  • 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
  • 使用 awk 解析日志文件

    我尝试使用以下代码解析日志文件 if line match then awk 2 vFiler echo vFiler 解释 有一些行以这样的模式开头 或 vol 后跟名称 我想找到所有以 或 vol 并将后面的字符串设置为等于变量 但我真

随机推荐

  • 保存之前和加载之后的数据框状态 - 有什么不同?

    我有一个包含一些 SQL 表达式 合并 case when 等 的 DF 我后来尝试映射 平面映射这个 DF 在那里我得到了Task not serializable由于字段包含 SQL 表达式而导致错误 为什么我需要 map flatMa
  • 有效识别差异

    每天 我们都会收到来自不同供应商的不同格式 CSV XML 自定义 的巨大文件 我们需要将这些文件上传到数据库中以进行进一步处理 问题是这些供应商将发送其数据的完整转储 而不仅仅是更新 我们有一些应用程序 我们只需要发送更新 即仅发送更改的
  • Swift 中 java 的 instanceof 相当于什么?

    就像java的instanceOf关键字一样 Swift中的等价物是什么 java的例子 A a new A boolean isInstanceOfA a instanceof A 这里 isInstanceOfA 为 true 所以我需
  • Httpd.conf 多个 VirtualHost 部分(是:Mono ASP.NET MVC AutoHosting 问题)

    我正在做的正是this https stackoverflow com questions 699487 mono 2 4 autohosting and mvc 703196 703196尝试禁用自动托管 但是现在我收到 多次尝试生成进程
  • Java DatagramSocket 监听广播地址

    我编写了一个简单的测试类 旨在监听 Eth 并接收所有UDP数据包 发送至端口5001 public class Main public static void main String args throws SocketException
  • 如何解决 IIS7.0 上的“HTTP 错误 500.19 - 内部服务器错误”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是什么原因导致此错误 我该如何修复它 详细错误信息模块 IIS Web 核心通知开始请求处理者尚未确定错误代码0x8007052e配置错误
  • 如何在 DataReader 上实现 Peek() 函数?

    似乎没有一个Peekado net 中 DataReader 上的方法 我希望能够在循环阅读器之前执行一些一次性处理 并且如果能够查看第一行中的数据而不导致后续迭代跳过它 那就太好了 实现这一目标的最佳方法是什么 我正在使用一个SqlDat
  • 在网站之间安全地传输用户

    这是场景 您有两个存在于不同环境中的独立网站 即不同的数据库 不同的 Web 服务器 域 您可以完全控制两个站点的代码 但从上面的观点来看 它们不能直接与对方的数据库进行通信 您必须将用户从站点 A 安全地转移到站点 B 实现这一点的最佳方
  • 如何使文本在 HTML 页面中垂直和水平居中

    我对Java C 数据库 网络等有一些经验 但是与Html相关的任何东西我都是初学者 我唯一想要的就是在页面中间居中两个单词 这个页面只会有这两个词 WORD1 WORDWORDWORDWORD2 我尝试过一些所见即所得的软件 比如 Kom
  • Rails UJS“开启”处理ajax事件

    我在 Rails 应用程序中使用 jQuery 方法 on 来将事件附加到并不总是存在的表单上 当 myForm 附加到文档时 它似乎没有附加事件处理程序 这是UJS的建议用法on myForm on ajax complete funct
  • 在 Swift 中调用 CGPatternCreate

    我想知道如何将以下 Objective C 方法转换为 Swift 函数 CGPatternRef pattern CGPatternCreate NULL rect CGAffineTransformIdentity 24 24 kCGP
  • Java Swing UI 测试驱动程序替换 Fest [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有 Fest 的替代品 以便替代品可以以黑盒方式 不是 JUnit 驱动 Java Swing UI
  • 计算文件夹大小

    我正在尝试并行计算文件夹大小 也许这是一种天真的做法 我所做的是将每个分支节点 目录 的计算交给代理 所有叶节点的文件大小都添加到 my size 中 好吧 这不起作用 扫描 工作正常 连续 pscan 仅打印第一级的文件 def agen
  • 如何全局指定 .net 5.0 应用程序不支持 android 和 ios

    我在 net 5 0 项目中使用 System IO Ports 这会生成如下警告 警告 CA1416 此调用站点可在所有平台上访问 ios android 不支持 SerialPort Close 我可以在调用 SerialPort 方法
  • 如何使用标准应用程序打开文件?

    我的应用程序将 PDF 打印到临时文件 如何使用 Python 中的默认应用程序打开该文件 我需要一个解决方案 Windows Linux 如果没有更通用的话 Ubuntu 和 Xfce Related 使用 Python 中的默认应用程序
  • 防止 mat-option 选择 if 条件

    我想阻止选择 mat option 因为单击它会打开一个对话框 仅当从对话框中选择某些内容时 才应选择我的选项 如果对话框中未选择任何内容 则不应更改 mat option 之前的值
  • Bootstrap 中延迟显示崩溃?

    如何延迟 Bootstrap 4 中折叠元素的显示 例如 您是否延迟显示下面示例中的 链接 href 按钮的内容 p a class btn btn primary href collapseExample Link with href a
  • 架构 i386 clang 的重复符号

    我在 google 和 stackoverflow 上看到了与此错误相关的几篇文章 我已经阅读了所有这些文章 但仍然在获取问题 我会很高兴找到解决方案 这是我在编译时收到的错误消息 找不到选项 L Users somefolder Docu
  • Scrapy图像下载

    我的蜘蛛运行时没有显示任何错误 但图像未存储在文件夹中 这是我的 scrapy 文件 蜘蛛 py import scrapy import re import os import urlparse from scrapy spiders i
  • awk:对字符串使用反向匹配,然后替换字符

    我想提取不包含的行 并删除 在输出中 我的输入文件如下所示 string 1 string 2 string 3 Can use grep and tr获得想要的输出 grep v FILE tr d string3 不过我想用awk 我可