hallo leute kann mir einer helfen mit shell script haben ein kleines Problem ist lxc hdd abfrage
hier mein problem
hoffe ihr könnt mir da helfen
hier mein problem
Code:
if [ "$1" = "LXC" ]; then
Status_VS "$1" "$2" "$3"
STATUS="$return_status"
if [ "$return_status" = "RUNNING" ]; then
if [[ "$3" = "uptime" || "$3" = "all" ]]; then
UPT0=$"`pct exec $2 uptime`"
UPT1=$( echo "$UPT0" | awk -F"up " '{print $2}' | awk -F"load" '{print $1}' )
UPT2=$( echo "$UPT1" | sed -e 's/,//g' )
UPT3=$( echo "$UPT2" | awk -F" " '{print $1}' )
UPT4=$( echo "$UPT3" | cut -d" " -f2 )
if [ "$UPT4" = "min" ]; then
UPT5=$( echo "$UPT3" | cut -d" " -f1 )
if [ "$3" != "all" ]; then
return_info="0,0,$UPT5,0"
else
UPTIME="0,0,$UPT5,0"
fi
fi
if [[ "$UPT4" = "day" || "$UPT4" = "days" ]]; then
UPT5=$( echo "$UPT3" | cut -d" " -f1 )
UPT6=$( echo "$UPT3" | cut -d" " -f3 )
UPT7=$( echo "$UPT6" | cut -d":" -f1 )
UPT8=$( echo "$UPT6" | cut -d":" -f2 )
if [ "$3" != "all" ]; then
return_info="$UPT5,$UPT7,$UPT8,0"
else
UPTIME="$UPT5,$UPT7,$UPT8,0"
fi
fi
if [[ "$UPT4" != "min" && "$UPT4" != "day" && "$UPT4" != "days" ]] ; then
UPT5=$( echo "$UPT3" | cut -d":" -f1 )
UPT6=$( echo "$UPT3" | cut -d":" -f2 )
if [ "$3" != "all" ]; then
return_info="0,$UPT5,$UPT6,0"
else
UPTIME="0,$UPT5,$UPT6,0"
fi
fi
fi
if [[ "$3" = "ram" || "$3" = "all" ]]; then
FREE="`pct exec $2 free | head -n 2 | tail -n 1`"
SIZE=$( echo "$FREE" | awk '{print $2}' )
USED=$( echo "$FREE" | awk '{print $3}' )
AVAI=$( echo "$FREE" | awk '{print $4}' )
if [ "$3" != "all" ]; then
return_info="$SIZE,$USED,$AVAI"
else
RAM="$SIZE,$USED,$AVAI"
fi
fi
if [[ "$3" = "cpu" || "$3" = "all" ]]; then
if [ "$3" != "all" ]; then
return_info="0"
else
CPU="0"
fi
fi
if [[ "$3" = "swap" || "$3" = "all" ]]; then
FREE="(pct exec $2 free | tail -n 1 | head -1)"
SIZE=$( echo "$FREE" | awk '{print $2}' )
USED=$( echo "$FREE" | awk '{print $3}' )
AVAI=$( echo "$FREE" | awk '{print $4}' )
if [ "$3" != "all" ]; then
return_info="$SIZE,$USED,$AVAI"
else
SWAP="$SIZE,$USED,$AVAI"
fi
fi
if [[ "$3" = "hdd" || "$3" = "all" ]]; then
FREE="`pct exec $2 df | grep /dev/loop0`"
SIZE=$( echo "$FREE" | awk '{print $2}' )
USED=$( echo "$FREE" | awk '{print $3}' )
AVAI=$( echo "$FREE" | awk '{print $4}' )
PERC=$( echo "$FREE" | awk '{print $5}' )
if [ "$3" != "all" ]; then
return_info="$SIZE,$USED,$AVAI,$PERC"
else
HDD="$SIZE,$USED,$AVAI,$PERC"
fi
fi
if [ "$3" = "status" ]; then
return_info="$STATUS"
fi
if [ "$3" = "all" ]; then
return_info="$STATUS|$UPTIME|$HDD|$RAM|$SWAP|$CPU"
fi
else
return_info="NOK"
fi
fi
In info line 215:
FREE="`pct exec $2 df (%) | grep /dev/loop0`"
^-- SC2006: Use $(..) instead of legacy `..`.
^-- SC2086: Double quote to prevent glo bbing and word splitting.
Last edited: