sed -e '$!d' 未按预期工作?

sed -e '$!d' 未按预期工作?

当我跑步时:

sudo /usr/local/nginx/sbin/nginx -t

我回来了:

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

我只想要最后一行,所以我运行:

sudo /usr/local/nginx/sbin/nginx -t | sed -e '$!d'

但我得到的结果与没有 sed 时一样。

答案1

您的命令可能输出到 stderr 而不是 stdout。将 stderr 重定向到 stdout:

sudo /usr/local/nginx/sbin/nginx -t 2>&1 | sed -e '$!d'

如果您只想要输出的最后一行,也可以使用tail -n 1代替sed

相关内容