GNU/Linux >> Linux Esercitazione >  >> Linux

Linux – Riga di stampa solo se il numero nel terzo campo è maggiore di X?

Questa domanda ha già risposte qui :rimuove le righe in cui il valore di un campo è minore o uguale a 3 – sed o awk?

(1 risposta)
ottieni tutte le righe con un valore di colonna maggiore di una soglia

(2 risposte)
Chiuso 3 anni fa.

Il seguente lsblk comando stampa l'utilizzo del disco in byte

 lsblk -bio KNAME,TYPE,SIZE,MODEL| grep disk 

 sda   disk  298999349248 AVAGO
 sdb   disk 1998998994944 AVAGO
 sdc   disk 1998998994944 AVAGO
 sdd   disk 1998998994944 AVAGO
 sde   disk   98998994944 AVAGO

come stampare i dischi quando il disco è maggiore di 300000000000 , aggiungendo dopo la pipe awk o perl una riga o altro

output previsto:

 lsblk -bio KNAME,TYPE,SIZE,MODEL| grep disk | ......
 sdb   disk 1998998994944 AVAGO
 sdc   disk 1998998994944 AVAGO
 sdd   disk 1998998994944 AVAGO

Risposta accettata:

Puoi farlo con awk stesso per il pattern matching invece di usare grep .

lsblk -bio KNAME,TYPE,SIZE,MODEL| awk '/disk/ && $3> 300000000000 || NR==1'

Oppure usa il valore scientifico 3e11 .


Linux
  1. Come eliminare tutti i file più vecchi di X numero di giorni in Linux?

  2. Linux:come mostrare costantemente il numero di riga durante la navigazione in Nano?

  3. Come visualizzare righe specifiche di un file nella riga di comando di Linux

  4. Come posso cancellare i caratteri stampati in un'applicazione console (Linux)?

  5. comando cut o awk per stampare il primo campo della prima riga

Linux_Logo:uno strumento da riga di comando per stampare loghi ANSI a colori delle distribuzioni Linux

Come analizzare l'utilizzo del disco nella riga di comando di Linux?

Come trovare il numero di modello dell'unità disco Linux?

Come ottenere il numero di dischi fisici in Linux?

Riga di comando solo SO UNIX/Linux

come inserire una nuova riga se una riga ha più di 60 caratteri