Linux:如何将两个终端命令的输出一起写入一个文件?

Linux:如何将两个终端命令的输出一起写入一个文件?,linux,bash,shell,io-redirection,Linux,Bash,Shell,Io Redirection,假设我想保存(附加)命令的输出: 日期 自由-m 。。归档。带着一种期待,比如: Thu Jan 14 04:38:08 GMT 2016 total used free shared buffers cached Mem: 3655 1087 2567 0 50 117 -/+ buffers/cache:

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

  • 日期
  • 自由-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
但是我怎样才能把它们变成一个干净的命令呢

{ date; free -m; } > memlogs.txt
(注意后面的分号。)

如果希望重定向是临时的,则用括号将最后一个命令括起来,以便将命令放在子shell中

(
    exec > memlogs.txt
    date
    free -m
)
(注意后面的分号。)

如果希望重定向是临时的,则用括号将最后一个命令括起来,以便将命令放在子shell中

(
    exec > memlogs.txt
    date
    free -m
)

你能确认一下你的外壳吗?因为您使用的是Linux,所以可能会假设bash,但是csh/tcsh中的root提示符可能会有
提示符。您能确认shell吗?因为您使用的是Linux,所以可能会假设bash,但是csh/tcsh中的root提示符可能会有
提示符。谢谢!我喜欢第一个,但有“双”箭头“附加”到文件中<代码>{date;free-m;}>>memlogs.txt。谢谢!我喜欢第一个,但有“双”箭头“附加”到文件中<代码>{date;free-m;}>>memlogs.txt。
(
    exec > memlogs.txt
    date
    free -m
)