代码之家  ›  专栏  ›  技术社区  ›  N00b123

Unix上的头和尾

  •  -1
  • N00b123  · 技术社区  · 11 年前

    我的第二个作业要求我们在Unix或Linux中编写一个命令,使用head和tail提取多个文件的某些部分。我不明白该怎么做。问题是:

    (5分)使用head和tail,编写一个命令来提取文件的第二部分(即数据部分)。 将其转换为一个名为extractdata的可执行脚本(无需提交)。然后使用find和extractdata,编写一个命令获取月份目录中所有.csv文件的第二部分,并将输出放入名为polls.csv的文件中。请确保将此文件保存在homedir中。您将在下一次作业中再次使用它。[hint]在脚本中不要忘记命令行变量$1。例子: 头-52$1

    .csv文件由三部分组成:(1)两行标题,描述字段;(2) 51行代表每个州的数据(加上华盛顿特区);(3) 文件的其余部分是摘要信息。第二部分中每个状态的数据字段以逗号分隔。 我得去第二节。

    非常感谢。

    3 回复  |  直到 2 年前
        1
  •  1
  •   Steve Barnes    11 年前

    分阶段进行:

    • 阅读头部和尾部都做什么(获得第一行和最后n行)
    • 想想你需要什么(中间的51行)
    • 你怎么能这样做?
        2
  •  0
  •   pts    11 年前

    使用 head 以提取前53行。使用 tail 以提取结果的最后51行(有效地忽略前2个标题行)。

        3
  •  0
  •   N00b123    11 年前

    我遇到的问题是如何从多个.csv文件中获取数据。我用通配符来解决我的问题。 如果其他人需要知道我用了这个:

    head-n 53$1/usr/local/tmp/election2008/ * /*.csv | tail-n 51$1