Я должен написать сценарий оболочки, который возвращает всех пользователей онлайн, которые вошли в систему после указанной даты.

Я старался

who | cut -d' ' -f1 | sort | uniq

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

1 ответ1

1

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

Команда date может легко преобразовать в эпоху (секунды с 1970-01-01 00:00:00 UTC):

Текущая дата / время в эпоху:

date +%s
1479994078

Конвертировать любую дату в эпоху:

date --date="19-FEB-12" +%s
1329620400

Вы можете легко сравнить даты в bash, развернув команды:

if [[ $(date +%s) >= $(date --date="19-FEB-12" +%s) ]]
  then
    ...
fi

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .