Supponiamo che tu abbia dati con quantità in formato leggibile dall'uomo, come l'output di du -h
, e desideri operare ulteriormente su quei numeri. Diciamo che vuoi reindirizzare i tuoi dati attraverso grep per fare una somma di un sottoinsieme di quei dati. Lo fai ad-hoc su molti sistemi che non hai mai visto prima e hai solo utilità minime. Desideri conversioni di suffissi per tutti i suffissi 10 ^ n standard.
Esiste un'utilità gnu-linux per convertire i numeri con suffisso in numeri reali all'interno di una pipeline? Hai una funzione bash scritta per fare questo, o un po 'di perl che potrebbe essere facile da ricordare, invece di una serie di sostituzioni regex o diversi passi sed?
38M /var/crazyface/courses/200909-90147
2.7M /var/crazyface/courses/200909-90157
1.1M /var/crazyface/courses/200909-90159
385M /var/crazyface/courses/200909-90161
1.3M /var/crazyface/courses/200909-90169
376M /var/crazyface/courses/200907-90171
8.0K /var/crazyface/courses/200907-90173
668K /var/crazyface/courses/200907-90175
564M /var/crazyface/courses/200907-90178
4.0K /var/crazyface/courses/200907-90179
| grep 200907 | <amazing suffix conversion> | awk '{s+=$1} END {print s}'
Riferimenti rilevanti:
/200907/
davanti al codice per riga, ad esawk '/200907/{s+=$1} END {print s}'