2015-10-19 76 views
1

我需要一些幫助。我想要的結果將是BASH:刪除多行命令的換行符

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+=$5;} END{print percent"%"}'| column -t && echo -n ":" 

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

回答

1

您可以在第一個句子使用command substitution(注意到你用這種方式創建一個子shell):

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

謝謝主席先生。有用。 :) – rkevx21