Я абсолютно ненавижу, когда кто-то говорит мне прочитать руководство, но в этом случае, пожалуйста, посмотрите на страницу человека для hostname и большинство, если не все ваши вопросы должны быть даны ответы. Он написан намного лучше, чем я мог бы объяснить.
Чтобы оказать некоторую помощь, некоторые выдержки из ваших вопросов: - Ваше имя хоста то, что вы видите в/etc/hosts. - Возвращенное полное доменное имя основано на том, что возвращает распознаватель, поэтому вы видите возвращаемое значение в/etc/hosts, когда распознаватель сначала проверяет файл хостов, а затем выполняет все необходимые DNS-запросы.
Тот, на который я не верю, затрагивается на странице hostname man (основываясь на моем повторном чтении страницы man), поэтому записи в файлах не заканчиваются точкой.
Это соглашение используется при работе с записями DNS. Файлы hostname и hosts фактически не являются DNS-записями. Если вы настраивали эти записи в привязке, чтобы они разрешались для DNS-поиска, то в игру может вступить использование точки (проверьте этот хороший ресурс: http://www.zytrax.com/books/dns/apa/dot.html ).
Также помните, что все эти значения не передаются из системы. Таким образом, если вы хотите, чтобы другая система получила доступ на основе полного доменного имени, она основана на файле хостов в этой другой системе или не имеет записей хостов на основе поиска DNS, которые внешняя система делает на полное доменное имя, чтобы разрешить его обратно в систему.
-121--37400-
Я моделировал комаров в среде bash/ksh и обнаружил
stub_mosquitto |
sed -e 's/.*m0, //' -e 's/, .*bytes))//' | while read line; do
if [[ "${line}" = \'* ]]; then
echo -n "${line}, "
else
echo "${line}, $(date)"
fi
done
Я использовал sed здесь для резки интересных частей.
Я использую при чтении строку для простого способа соединения 2 строк (и добавление даты). Это возможно с sed или tr, но для этого может потребоваться некоторая работа (различные версии sed).
Я точно не понимаю призыв к mosquitto_sub, поэтому показываю решение только тогда, когда последовательности идут по трубе:
#
? 2 > & 1
grep пропустит их. -121--174975-
Когда это ваша локальная система, и вы очень осторожны, вы можете заменить все файлы/usr/bin оболочками.
Что-то вроде
cp -pr /usr/bin /usr/orgbin
cd /usr/bin
for f in *; do
echo "/usr/orgbin/echo $f used >> /tmp/bin_usage.out" > $f
chmod +x $f
done
Сначала попробуйте с 2 невинными программами?
Имена на самом деле совпадают, но sar
и free
не показывают точно таких же полей.
Ваши первые ?????
это не kbcommit
, это общая память, такая же как Shmem
из /proc/meminfo
.
Вторая строка показывает использование памяти, если память, используемая буферами и кэшем, была обработана как свободная, а не как используемая.
$ free
total used free shared buffers cached
Mem: MemTotal kbmemused kbmemfree Shmem kbbuffers kbcached
-/+ buffers/cache: USED2 FREE2
Swap: 0 0 0
На самом деле, как, возможно, демонстрирует ваш вывод, sar
kbmemused
, вероятно, не то же самое, что второе поле «Mem:» из free
. Из man sar
:
kbmemused Объем используемой памяти в килобайтах. Это не учитывает память, используемую само ядро.
Предположим, что часть того, что не учитывается, это:
kbbuffers Объем памяти, используемой ядром в качестве буферов , в килобайтах.
кэш-память Объем памяти, используемый для кэширования данных ядром в килобайтах.
Надеюсь, это не просто вводящая в заблуждение документация; Я не пользователь sar
. В любом случае, верхняя строка в free
действительно включает буферы и кэш. Вторая строка ( +/- buffers / cache
) не работает. Обратите внимание: 403628 ( буферы
) + 5789524 ( кэшированные
) = 6193152 и 9120348 ( Mem: used
) - 6193152 = 2927196 ( +/- буферы / cache: использовано
).
их имена
Вы можете называть их как хотите. Имена из sar
произвольны. Если вы ссылаетесь на значение, выводимое из free
, как «использованная память минус кеш», очевидно, что вы имеете в виду первое число во второй строке и т. Д.