【问题标题】:Linux: How to write the outputs of TWO terminal commands altogether into a file?Linux:如何将两个终端命令的输出完全写入文件?
【发布时间】:2016-04-19 06:21:26
【问题描述】:

假设我想保存(附加)命令的输出:

  • 日期
  • 免费 -m

.. 到一个文件中。带着期望,比如:

Thu Jan 14 04:38:08 GMT 2016
                 total       used       free     shared    buffers     cached
Mem:              3655       1087       2567          0         50        117
-/+ buffers/cache:            919        735
Swap:                0          0          0

我知道使用单个命令进行保存的方法,例如:

# date >> memlogs.txt
# free -m >> memlogs.txt

但是我该如何正确地将它们变成一个干净的命令呢?

【问题讨论】:

  • 你能确认你的shell吗?由于您使用的是 Linux,因此可能会假设为 bash,但 csh/tcsh 中的根提示符可能具有 # 提示符。

标签: linux bash shell io-redirection


【解决方案1】:
{ date; free -m; } > memlogs.txt

(注意后面的分号。)

{
    date
    free -m
} > memlogs.txt

exec > memlogs.txt
date
free -m

如果您希望重定向是临时的,请用括号将最后一个命令放在子 shell 中。

(
    exec > memlogs.txt
    date
    free -m
)

【讨论】:

  • 谢谢!我喜欢第一个,但是用“双”箭头“追加”到文件中。 { date; free -m; } >> memlogs.txt.
猜你喜欢
  • 2012-05-09
  • 1970-01-01
  • 2016-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-02
  • 1970-01-01
相关资源
最近更新 更多