Команда (с разными ограничениями) предоставляется на разных платформах . Согласно странице руководства HPUX , команда возникла из BSD (и для нее была страница руководства SunOS4 - нет для Solaris).
В документации AIX показано ограничение, но при сравнении страниц руководства useradd
и chfn
, которые ссылаются на имя пользователя , а не на полное имя .
Такое же ограничение обнаружено в самой старой версии shadow-utils, которую вы можете использовать с некоторыми вариантами Linux. Судя по датам авторских прав, может быть с 1994 года (идентификатор RCS указывает июль 1999 года).Следующие комментарии об авторе:
Я пришла работать в IBM / Остин в мае 1989 года в качестве подрядчика, работающего над программной безопасностью для AIX v3.1. С 1989 по 1995 год я работал над рядом операционных систем IBM, включая AIX PS / 2, AIX S / 370 и OS / 400 V2R3. Довольно клетчатый путь. В конце концов я устроился на полную ставку в IBM и покинул команду AIX Change Team в июне 1995 года. Мои первоначальные обязанности в качестве разработчика OS / 2 заключались в изучении решений POSIX для OS / 2. В конце концов я перешел в группу разработки файловой системы и работал там до тех пор, пока мое задание по разработке не было завершено в октябре 1996 года.
приводит к выводу, что на его дизайн было некоторое влияние со стороны авторская работа с AIX.
Трудно сказать, почему AIX сделала это, но, вероятно, упростит создание сценариев (и потому, что у людей не было веских причин иметь знаки равенства в их полном имени , ни больше, чем в имя пользователя будет).
du -h / var / log
(вам нужно использовать обратные кавычки или $ (xxx), а не двойные кавычки) вернет результат например, ниже. Но вы хотите определить только размер.
# du -h /var/log
2.6M /var/log/httpd
4.0K /var/log/ntpstats
14M /var/log/sa
4.0K /var/log/mail
26M /var/log/audit
46M /var/log
#
Если вы запустите du -s / var / log
, вы увидите такой вывод, как
# du -s /var/log
46256 /var/log
#
. Таким образом, подключившись к cut, вы можете извлечь числовой элемент, как показано ниже.
# du -s /var/log | cut -f1
46256
#
Это означает, что строку в вашем скрипте следует изменить с
folder_size="du -h /var/log"
на
folder_size=`du -s /var/log | cut -f1`
Или, чтобы использовать нерекомендованный синтаксис
folder_size=$(du -s /var/log | cut -f1)
Насколько я понимаю, вы просите помощи со сценарием. Могу ли я предложить альтернативу использованию Logrotate для просмотра журналов и их поворота в зависимости от размера и количества повернутых журналов, которые вы храните?
Что-то вроде этого:
/tmp/output.log {
size 100M
copytruncate
create 700 root utmp
rotate 4
compress
}