Создание скрипта для проверки размера директории

Команда (с разными ограничениями) предоставляется на разных платформах . Согласно странице руководства HPUX , команда возникла из BSD (и для нее была страница руководства SunOS4 - нет для Solaris).

В документации AIX показано ограничение, но при сравнении страниц руководства useradd и chfn , которые ссылаются на имя пользователя , а не на полное имя .

Такое же ограничение обнаружено в самой старой версии shadow-utils, которую вы можете использовать с некоторыми вариантами Linux. Судя по датам авторских прав, может быть с 1994 года (идентификатор RCS указывает июль 1999 года).Следующие комментарии об авторе:

  • The Source Fantastic: The Shadow Suite
  • Джулианна Фрэнсис Хо (заархивированная веб-страница)

    Я пришла работать в 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 года.

  • chfn - изменение имени пользователя и информации

приводит к выводу, что на его дизайн было некоторое влияние со стороны авторская работа с AIX.

Трудно сказать, почему AIX сделала это, но, вероятно, упростит создание сценариев (и потому, что у людей не было веских причин иметь знаки равенства в их полном имени , ни больше, чем в имя пользователя будет).

2
29.11.2016, 22:14
2 ответа

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)
2
27.01.2020, 22:10

Насколько я понимаю, вы просите помощи со сценарием. Могу ли я предложить альтернативу использованию Logrotate для просмотра журналов и их поворота в зависимости от размера и количества повернутых журналов, которые вы храните?

Что-то вроде этого:

/tmp/output.log {
    size 100M
    copytruncate
    create 700 root utmp
    rotate 4
    compress
}
0
27.01.2020, 22:10

Теги

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