【问题标题】:Bash redirect not appearing unless using append?除非使用附加,否则不会出现 Bash 重定向?
【发布时间】:2020-02-17 03:11:06
【问题描述】:

为什么在使用 >> 时以下操作有效,但在 > 时无效?

GNU bash,版本 4.4.12

【问题讨论】:

  • 对于文本内容,请在您的问题中使用实际文本(代码格式)而不是图像。

标签: bash redirect


【解决方案1】:

您看到这种情况的原因是因为 shell 将通过设置重定向开始,当您使用 > 时,它会清除您要重定向到的文件。所以在这种情况下,首先发生的是test 文件被清除。然后,它运行命令。所以现在test 是一个空文件,cat test 也将为空,因此tr 将从管道接收一个空输入,因此不会将任何内容重定向到该文件。

【讨论】:

  • 以及如何在不使用第二个文件的情况下解决问题
  • 根据 Bash 的工作方式,不使用临时文件是不可能的。 Bash 总是在运行命令之前启动重定向。
猜你喜欢
  • 2018-12-05
  • 2012-05-21
  • 2020-09-19
  • 1970-01-01
  • 2015-11-11
  • 2018-02-03
  • 1970-01-01
  • 1970-01-01
  • 2010-09-27
相关资源
最近更新 更多