Digamos que você tenha dados com quantidades em formato legível por humanos, como a saída de du -h
, e deseje continuar operando com esses números. Digamos que você deseja canalizar seus dados através do grep para fazer uma soma de um subconjunto desses dados. Você faz isso ad-hoc em muitos sistemas que você nunca viu antes e possui apenas utilitários mínimos. Você deseja conversões de sufixo para todos os sufixos padrão de 10 ^ n.
Existe um utilitário gnu-linux para converter os números com sufixo em números reais dentro de um pipeline? Você tem uma função bash escrita para fazer isso, ou algum perl que pode ser fácil de lembrar, em vez de várias substituições de expressões regulares ou várias etapas 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}'
Referências relevantes:
/200907/
na frente do seu código por linha, por exemploawk '/200907/{s+=$1} END {print s}'