1. Learn
  2. /
  3. 课程
  4. /
  5. Shell 入门

Connected

道练习

怎样更好地组合命令?

使用重定向来组合命令有两个缺点:

  1. 会留下许多中间文件(如 top.csv)。
  2. 生成最终结果的命令分散在多行历史记录里。

Shell 提供了另一个一次性解决这两个问题的工具,叫作 pipe(管道)。 再次,从运行 head 开始:

head -n 5 seasonal/summer.csv

这次不要把 head 的输出写入文件, 而是加上竖线并在其后使用不带文件名的 tail 命令:

head -n 5 seasonal/summer.csv | tail -n 3

管道符会告诉 Shell:把左侧命令的输出,作为右侧命令的输入。

说明

100 XP

使用 cut 从以逗号分隔的文件 seasonal/summer.csv 的第 2 列选出所有牙齿名称,然后将结果通过管道传给 grep,并使用反向匹配来排除包含单词 "Tooth" 的表头行。cut 和 grep 的详细用法分别在第 2 章的练习 8 和 11 中讲解过。