如何在输出文件中包含命令

问题描述 投票:0回答:1

我已经阅读了很多关于 stdin、stdout 和 stderr 的信息。我明白了机制。 但是如何将我输入的命令及其结果包含到输出文件中?

示例

如果我输入以下命令,

回声你好! > abc.txt

cat abc.txt > FinalOutput.txt

当我打开 FinalOutput.txt 我想看到,

猫abc.txt

你好!

我已经尝试过了,

cat abc.txt 0> FinalOutput.txt

cat abc.txt > FinalOutput.txt 0>&1

问题

我知道还有其他方法,例如脚本、日志保存、bash等

但是有没有一个命令(不太厚重)来记录命令的输入和输出,并将它们写入文件中?

谢谢!

linux stdout stdin stderr
1个回答
0
投票

直接回答

您可以配置 Linux 脚本来输出评估的每一行,方法是将

set -x
添加到文件顶部,例如:

#!/bin/bash
set -x

您可以参考

set --help
man set
了解更多信息。

我的建议

我至少喜欢在开发时使用

set -eu
,以及
x

  • e 将在出现任何错误时退出,迫使您正确捕获和管理它们。
  • 如果变量未设置,你会出错,这可能是灾难性的。

祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.