当我作为标准用户 运行 时,我可以将 lshw 警告通过管道传送到 /dev/null 吗?

Can I pipe lshw warnings to /dev/null when I run it as a standard user?

我正在尝试创建一个别名以在我的机器上获取内存,目前我有 alias mem="lshw | grep size | awk -F: '{print }'",当我 运行 作为非超级用户时,我收到以下警告留言:

WARNING: you should run this program as super-user.
WARNING: output may be incomplete or inaccurate, you should run this program as super-user.
      size: 23GiB

我并不担心结果可能不完整,事实上,当我比较 运行 以 root 用户与标准用户的输出时,结果是完全一样的。有谁知道如何摆脱这些警告?我尝试通过管道将 stderr 传输到 /dev/null,但这没有用。还有其他人知道如何摆脱这些警告吗?

你对我感兴趣吗

alias mem='free -g | grep Mem | awk '\''{print  " GiB"}'\'

free -m会给MiB;您可以将“ GiB”部分更改为您想要的任何内容(或删除它)。

我的机器上没有安装 lshw,所以很遗憾,我无法帮助您调试您的版本。

alias mem="lshw 2> /dev/null| grep size | awk -F: '{print }'"

或者您可以免费使用或阅读 /proc/meminfo

cat /proc/meminfo |grep MemTotal

或者添加一个 grep:

... | grep "size:"