王美洁

1.10 重定向和管道

1. 重定向

在 shell 中

  • >:表示覆盖写入,即先把原来的内容清空再写入
  • >>:表示追加写入,即在原来的内容后面续写

下面是简单例子:

bash
python script.py > output.log  # 覆盖写入日志
python script.py >> output.log # 追加写入日志

2. 管道

在 shell 中 | 表示把前面的命令输出传给后面的命令当输入,常见的例子如下:

bash
tail -n 100 job.out | grep energy # 查看最后 100 行并筛选 energy
cat job.out | grep error          # 输出文件内容并筛选 error