bash - 输出 apt-get upgrade 为文本

标签 bash ubuntu apt-get

我已经编写了一个用于更新 ubuntu 软件包并通过电子邮件发送给我的脚本,但是没有通过电子邮件发送或生成已升级和重新启动的服务的输出。我尝试从命令行运行更新并输出到文本文件,但仍然没有任何内容写入文本文件。有任何想法吗?

TEMP="/tmp/upgrade.txt"
MAIL_ADDR="user@example.com"
cat /dev/null > $TEMP
apt-get update && apt-get upgrade --assume-yes > $TEMP
mail -s "Upgrade for $HOSTNAME" $MAIL_ADDR < $TEMP
rm $TEMP

最佳答案

只需在您的 apt-get 命令中使用“&>”重定向即可解决此问题。

apt-get update &>$TEMP
apt-get upgrade --assume-yes &>> $TEMP

关于bash - 输出 apt-get upgrade 为文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15482671/

相关文章:

linux - Bash 循环 : How to execute once, 然后移动到下一个迭代

bash - 在 Bash 脚本中随机选择并打印三个字符串之一

swift - 在 ubuntu 上使用 MongoSwift 时 Vapor 崩溃

ubuntu - 由于 virtuoso-opensource-7.0-common 导致 apt-get 无法使用

java - 使用 Chef 通过代理在 Raspberry PI 3 上安装 Open JDK 8

c - 如何将变量传递给c中的命令

bash - 如何知道 Elasticsearch 中是否安装了 X-Pack?

python - 导入 pymorphy2 时出现异常

python - windows 中的合成器听起来比 linux 中的好得多(python 和 pyttsx3)

security - 当给定 `apt-get install` 访问权限时, `sudo` 的安全性如何(通过 `sudoers` 文件)