gpt4 book ai didi

linux - 获取某些行

转载 作者:太空狗 更新时间:2023-10-29 11:05:37 26 4
gpt4 key购买 nike

我在以下方面需要帮助:我有这种文件,名为 file-1

1
++++++^^++++
++++++++++++
+++++++++^^^
^^++++++++++

2
++++++++++++
^^^+++++^^^^
^^^^^^^+++++
+++++^^^++^+

现在,我想打印出起始编号与另一个名为 file-2 的文件相同的部分。假设 file-2 包含 1 值,所以我需要得到这个输出:

1
++++++^^++++
++++++++++++
+++++++++^^^
^^++++++++++

有人可以给我一些建议吗?

最佳答案

$ awk -v RS='' 'NR==FNR{split($0, a, /\n/); next}; $1 in a' file-{2,1}
1
++++++^^++++
++++++++++++
+++++++++^^^
^^++++++++++

file-2 逐行包含索引:

1
3
5

说明:

  • RS=''告诉awk读取多行记录
  • NR==FNRfile-2 读成一行,所以我们应该拆分 \n,并将结果保存到数组a
  • next 跳过剩余命令,准备读取file-1
  • $1 in a 测试 file-1 的第一列是否在数组 a
  • file-{2,1}我们应该先读取file-2得到所有索引

关于linux - 获取某些行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8836184/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com