Bash使用awk从文件中选择有效行

垃圾

我有一些无效行的大数据集。我只想将以有效日期(正则表达式数字)开头的行复制到另一个文件。

基本上检查awk $ 1是否为数字([0-9]),如果是,则将整行($ 0)写入输出文件,如果否则跳过此行,转到下一行。

我的想法如何(两个版本都给出语法错误):

awk '{if ($1 =~ [0-9]) print $0 }' >> output.txt
awk '$1 =~ [0-9] {print $0}' filename.txt

虽然这确实打印了第一个字段,但我不知道如何进行。

awk '{ print $1 }' filename.txt
19780101
19780102
19780103
a
19780104
19780105
19780106
...

完整数据集:

19780101    1   1   1   1   1
19780102    2   2   2   2   2
19780103    3   3   3   3   3
a   a   a   a   a   a
19780104    4   4   4   4   4
19780105    5   5   5   5   5
19780106    6   6   6   6   6
19780107    7   7   7   7   7
19780108    8   8   8   8   8
19780109    9   9   9   9   9
19780110    10  10  10  10  10
19780111    11  11  11  11  11
19780112    12  12  12  12  12
19780113    13  13  13  13  13
19780114    14  14  14  14  14
19780115    15  15  15  15  15
19780116    16  16  16  16  16
a   a   a   a   a   a
19780117    17  17  17  17  17
19780118    18  18  18  18  18
19780119    19  19  19  19  19
19780120    20  20  20  20  20

数据集可以用R复制

library(dplyr)
library(DataCombine)
N  <- 20
df = as.data.frame(matrix(seq(N),nrow=N,ncol=5))
df$date = format(seq.Date(as.Date('1978-01-01'), by = 'day', len = N), "%Y%m%d")
df <- df %>% select(date, everything())

df <- InsertRow(df, NewRow = rep("a", 6), RowNum = 4)
df <- InsertRow(df, NewRow = rep("a", 6), RowNum = 18)
write.table(df,"filename.txt", quote = FALSE, sep="\t",row.names=FALSE)

有关读取前N行的问题无法满足我的需求,因为无效行可能在任何地方。由于某种原因,该解决方案无法正常工作。

埃德·莫顿

由于您的数据集很大且要求如此简单,因此可以使用grep,因为它比awk更快:

grep '^[0-9]' file

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Excel文件中选择大量行的有效方法

来自分类Dev

从PARTITION BY中选择行的更有效方法

来自分类Dev

Pandas:使用多个条件从数据框中选择行的有效方法

来自分类Dev

在Python中从大文件中选择部分记录的更有效方法

来自分类Dev

使用bash删除旧文件的最有效方法

来自分类Dev

如何使用SQL以有效方式从字符串中选择特定文本

来自分类Dev

从表中选择部分或全部记录的有效方法

来自分类Dev

如何从具有有效值的最后一行和第一行中选择列名?

来自分类Dev

bash有效的文件解析

来自分类Dev

在数据框中选择任何行作为标题行的最有效方法是什么?

来自分类Dev

有效计数文件中的行

来自分类Dev

使用awk,sed或其他方法从海量文件中打印行的有效方法?

来自分类Dev

有效地分割大文件(当前使用awk)

来自分类Dev

使用AWK在特定列中选择具有特定值的行

来自分类Dev

使用对列表有效地选择SQL Server中的行?

来自分类Dev

使用 Flask 以更少的代码行选择元素的有效方法向 HTML 添加属性?

来自分类Dev

由于缺少__doPostBack脚本,因此无法在ASP.NET GridView中选择另一行(第一次选择有效)

来自分类Dev

从具有Z数量库存的Y列表中选择X的有效方法是什么?

来自分类Dev

如何使用AWK在URL中选择文件名?

来自分类Dev

如何使用awk或grep从不同的行中选择数据?

来自分类Dev

如何使用Java有效读取Hadoop(HDFS)文件中的第一行?

来自分类Dev

如何使用Java有效读取Hadoop(HDFS)文件中的第一行?

来自分类Dev

如何有效地对bash中有270,000+行的文件中的两列求和

来自分类Dev

如何检查m子中选择组件内的有效载荷是否为空?

来自分类Dev

有效地从列表中选择N个随机元素(无需toArray并更改列表)

来自分类Dev

从数据库中选择大量值的最有效方法

来自分类Dev

如何从tensorflow RNN中选择最后一个有效的输出值

来自分类Dev

mysql:从两者中选择最有效的查询

来自分类Dev

从排序数组中选择项目<值的有效方法

Related 相关文章

  1. 1

    在Excel文件中选择大量行的有效方法

  2. 2

    从PARTITION BY中选择行的更有效方法

  3. 3

    Pandas:使用多个条件从数据框中选择行的有效方法

  4. 4

    在Python中从大文件中选择部分记录的更有效方法

  5. 5

    使用bash删除旧文件的最有效方法

  6. 6

    如何使用SQL以有效方式从字符串中选择特定文本

  7. 7

    从表中选择部分或全部记录的有效方法

  8. 8

    如何从具有有效值的最后一行和第一行中选择列名?

  9. 9

    bash有效的文件解析

  10. 10

    在数据框中选择任何行作为标题行的最有效方法是什么?

  11. 11

    有效计数文件中的行

  12. 12

    使用awk,sed或其他方法从海量文件中打印行的有效方法?

  13. 13

    有效地分割大文件(当前使用awk)

  14. 14

    使用AWK在特定列中选择具有特定值的行

  15. 15

    使用对列表有效地选择SQL Server中的行?

  16. 16

    使用 Flask 以更少的代码行选择元素的有效方法向 HTML 添加属性?

  17. 17

    由于缺少__doPostBack脚本,因此无法在ASP.NET GridView中选择另一行(第一次选择有效)

  18. 18

    从具有Z数量库存的Y列表中选择X的有效方法是什么?

  19. 19

    如何使用AWK在URL中选择文件名?

  20. 20

    如何使用awk或grep从不同的行中选择数据?

  21. 21

    如何使用Java有效读取Hadoop(HDFS)文件中的第一行?

  22. 22

    如何使用Java有效读取Hadoop(HDFS)文件中的第一行?

  23. 23

    如何有效地对bash中有270,000+行的文件中的两列求和

  24. 24

    如何检查m子中选择组件内的有效载荷是否为空?

  25. 25

    有效地从列表中选择N个随机元素(无需toArray并更改列表)

  26. 26

    从数据库中选择大量值的最有效方法

  27. 27

    如何从tensorflow RNN中选择最后一个有效的输出值

  28. 28

    mysql:从两者中选择最有效的查询

  29. 29

    从排序数组中选择项目<值的有效方法

热门标签

归档