BASH: 删除多个命令的换行符

BASH: Remove newline for multiple commands

我需要一些帮助。我希望结果是

UP:N%:N%

但目前的结果是

UP:N%
:N%

这是代码。

#!/bin/bash
UP=$(pgrep mysql | wc -l);
if [ "$UP" -ne 1 ];
then
    echo -n "DOWN"
else
    echo -n "UP:"
fi

df -hl | grep 'sda1' | awk ' {percent+=;} END{print percent"%"}'| column -t && echo -n ":"

top -bn2 | grep "Cpu(s)" | \sed "s/.*, *\([0-9.]*\)%* id.*//" | \awk 'END{print 100 - "%"}' 

您可以在第一句话中使用 command substitution(注意您正在以这种方式创建子 shell):

echo -n $(df -hl | grep 'sda1' | awk ' {percent+=;} END{print percent"%"}'| column -t ):