Какая единица измерения используется для значений памяти из команды top в Linux?

Попробуйте что-нибудь в этом роде:

while read firstname lastname
do
    fullname="$firstname $lastname"
    uname=$(echo ${firstname:0:1}${lastname:0:4} | tr '[:upper:]' '[:lower:]')
    echo $fullname $uname
done  < newemploy.txt
2
10.06.2015, 03:56
2 ответа

Страница руководства вверху говорится:

2c. Использование ПАМЯТИ

Эта часть состоит из двух строк, которые могут выражать значения в кибибайтах (KiB) через exbibytes (EiB) в зависимости от коэффициента масштабирования, установленного с помощью интерактивной команды 'E'.

Он также содержит определения кибибайтов, которые обсуждаются в этом ответе суперпользователя .

На странице справочника для free указано, что он сообщает в килобайтах / мегабайтах, но на самом деле он сообщает в кибибайтах, если вы не добавите флаг - si .

Чтобы ответить на ваш вопрос, я считаю, что причина top сообщает 8191488k, а free -m сообщает 7999m, заключается в том, что 8191488 делится на 1024 и получается 7999,5. Единицы масштабируются в степени 1024, а не в степени 1000.

0
29.04.2021, 00:27

Смотрите k после каждого числа? Килобайт. (Это также значение по умолчанию для бесплатно , если вы не укажете -m .)

0
29.04.2021, 00:27

Теги

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