Один из распространенных сценариев сбоя сервера - это плохая память DRAM, иногда даже при использовании памяти ECC.
memtest86 +
- один из самых полезных инструментов для диагностики проблем с DRAM. Поскольку он загружается в начале памяти, я '
4G 4G 952M 60G
16 г 16 г 1,6 г 40 г
5G 780M 5G 80G Я хочу изменить всю единицу измерения с «M» на «G», например, этот 16G 16G ...
Как следует ниже, текст
16G 16G 1.9G 40G
4G 4G 952M 60G
16G 16G 1.6G 40G
5G 780M 5G 80G
Я хочу изменить все единицы с «M» на 'G', вот так
16G 16G 1.9G 40G
4G 4G 0.92G 60G
16G 16G 1.6G 40G
5G 0.76G 5G 80G
Я могу использовать python для этого, но я не знаю, как добиться этого с помощью оболочки? Может ли awk, sed, perl ... сделать это?
root@lab7-dl380-11:~/> cat test
16G 754G 457M
346M 77G 654M
root@lab7-dl380-11:~/> awk '{for(i=1;i<=NF;i++)if($i ~ /M/)printf $i/1024 "G\t"; else printf $i "\t"; print ""}' test
16G 754G 0.446289G
0.337891G 77G 0.638672G
Также вы можете округлить до сотых для более разумного вывода
root@lab7-dl380-11:~/> awk '{for(i=1;i<=NF;i++)if($i ~ /M/)printf int($i/1024*100)/100 "G\t"; else printf $i "\t"; print ""}' test
16G 754G 0.44G
0.33G 77G 0.63G