показывают имена, которые используются более чем на 80%

У меня есть файл, как показано ниже, с числом строк N '. Я хочу отобразить заголовок и дискинфо, которые используются более чем на 80%.

Server1
===========
TestDisk,76% 
disk1,22% 
disk2,22%
Server2 
===========
disk1,49%
Test,39%
disk40,82%

Кто-нибудь может мне помочь !!

0
08.02.2017, 11:36
2 ответа

, как показано ниже, у меня сработало, Спасибо j658063.mvrht.com за помощь.

cat filename | while read i
do
    if [ -z $(echo $i | grep "%") ] 
    then
        echo $i
else if (( $(echo "$(echo $i | awk -F "," '{print $2}'| awk -F "%" '{print $1}' ) > 80" | bc -l) )) then echo $i
fi fi done
0
28.01.2020, 04:48

Если выводится <имя файла> , грязный сценарий будет иметь вид

#!/bin/bash

cat <filename> | while read i
do

    if [ -z $(echo $i | grep "%") ] 
    then
        echo $i                
    else
        if (( $(echo "$(echo $i | grep -o '[0-9,]*%' | sed 's/,/./;s/%//' ) > 80" | bc -l)  ))
        then
          echo $i   
        fi
     fi
done
0
28.01.2020, 04:48

Теги

Похожие вопросы