Сценарий Usermod Nologin

Мне любопытно, как кто-то будет реализовывать сценарий, чтобы дать / usr / bin / nologin или / bin / false для всех учетных записей, отличных от root, между 1-999 (и любым определенным диапазоном uid, если на то пошло).

Мне нравится делать это регулярно на машинах (за исключением rsync и нескольких других приложений), но я делаю это вручную. То есть, я набираю «usermod [username] -s / usr / bin / nologin» для каждого пользователя повторно.

Как бы вы это сделали?

One Solution collect form web for “Сценарий Usermod Nologin”

awk -F: '{ if ($3 < 1000 && $3 != 0) print "chsh -s /bin/false " $1}' /etc/passwd 

проверить выход; если содержание:

 awk -F: '{ if ($3 < 1000 && $3 != 0) print "chsh -s /bin/false " $1}' /etc/passwd | sh 
  • Удалите повторяющиеся строки из нескольких файлов в папке: проверьте только файлы в пределах диапазона
  • Ошибка: ожидается целочисленное выражение
  • Как ввести сумму, полученную из awk в середине вывода текста
  • Поиск отсутствующего значения в текстовом файле
  • Автоматизация ввода текста из сценария bash без использования EOF
  • Почему у меня есть другой статус выхода для ps | grep в скрипте?
  • Область переменных в while-read-loop на Solaris
  • Закладка Shell, открытая через скрипт, зависает после того, как Ctrl + C запускает процесс
  • Cronjob перезаписывает перенаправление сценария
  • Добавление вывода команды в цикл for
  • Grep / awk для нескольких файлов для одного вывода
  • Linux и Unix - лучшая ОС в мире.