【问题标题】:How to empty a file in fish?如何清空fish中的文件?
【发布时间】:2013-11-09 11:00:57
【问题描述】:

bash shell 脚本中,我通常会运行 :> file 来清空文件。

现在使用fish,情况略有不同,上面的命令不起作用。

什么是鱼等价物?

【问题讨论】:

  • 我给了你一个+1,因为这是我第一次听说鱼。
  • ;-) 这是一个非常好的 unix shell - 你应该试一试
  • in fish 3 :>file 效果很好。

标签: fish


【解决方案1】:

可能适用于 Fish 和 Bash 的最简单方法是 echo "" > file

编辑:评论者是绝对正确的echo "" > file 生成一个带有换行符的文件,我想创建一个 文件的正确命令是cat /dev/null > file

【讨论】:

  • 这实际上会创建一个包含换行符的文件。
  • echo -n > file 将避免换行。这比 cat 更有效,因为它不需要调用任何外部命令。
  • 我有点喜欢 true > 文件更好
  • in bash 我只是写>file
【解决方案2】:

虽然它不像:那么短,但true是一个可以在任何地方工作并且不会产生任何输出的命令:

true > file

【讨论】:

  • 这应该是最佳答案!
【解决方案3】:

存在并且一直存在称为touch 的魔术方法,它将更改时间设置为实际或创建不存在的文件。为了兼容性,我建议您在您编写的所有脚本中使用这种方式(即使您编写 bash 代码)。

【讨论】:

  • 这不会截断现有文件。
  • 是的。但我认为你想创建空文件。如果你想设置空文件,你应该使用@Paul Hamilton 回答-n 标志或rm file; and touch file
猜你喜欢
  • 2020-11-16
  • 2017-09-23
  • 2019-11-18
  • 1970-01-01
  • 2011-06-22
  • 1970-01-01
  • 2012-08-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多