linux - 记录控制台的所有输出

标签 linux bash shell unix logging

我正在尝试在控制台中记录一些内容,但它不起作用。输出是:

Resolving...
+ /keyboard
+ /keyboard/windows.keylayout
+ /keyboard/hardware.txt
Addition count 3 src: 60.42KB
 61868 / 61868 [====================================================] 100.00% 0s

我想把它放到一个 .log 文件中。

但是当我执行 "script >> script.log" 作为 first 行时,它只需要“Resolving...”,我想那是因为“+”,我该如何解决,它将所有输出记录到该文件中?

cd /home/andre/test/ && /usr/local/bin/drive_armv7 pull -no-prompt keyboard 2>&1 >> error.log

谢谢。

最佳答案

赋值顺序?

cd /home/andre/test/ && /usr/local/bin/drive_armv7 pull -no-prompt keyboard 2>&1 >> error.log

告诉 stderr 去 stdout 要去的地方,也就是终端。然后你告诉标准输出进入日志。切换它们 -

cd /home/andre/test/ &&
/usr/local/bin/drive_armv7 pull -no-prompt keyboard >> error.log 2>&1  

这告诉 stdout 进入日志,然后告诉 stderr 去 stdout 要去的地方......现在是日志。

关于linux - 记录控制台的所有输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46586457/

相关文章:

linux - 使用 grep 从横幅中获取 IP 和端口

html - 如何在 C 中打印前斜杠?

bash - GitLab CI 规则不适用于扩展和单独规则

bash - Shell 条件错误 - Bash 语法无法识别

python - Scrapy Shell - 如何更改 USER_AGENT

linux将程序提升为shell命令

linux - tar Linux 命令排除子目录的层次结构(但包括它们的文件)

linux - 将 stdin 行批处理到另一个重复命令的推荐方法,例如 xargs 但通过 stdin 而不是参数?

c - SIG_DFL 在编译时抛出警告,在执行时被 OS 忽略

linux - 在 zip 文件的递归目录中查找文件