В зависимости от вашего случая использования, вы также можете использовать фактические числовые операции:
$ awk '{a = $1 % 1} a == 0 || a == 0.5' /tmp/foo
200.000 1.353 0.086
200.500 1.359 0.091
201.000 1.365 0.093
201.500 1.373 0.093
202.000 1.383 0.091
202.500 1.392 0.087
203.000 1.402 0.081
203.500 1.412 0.073
204.000 1.423 0.065
204.500 1.432 0.055
205.000 1.441 0.045
Проверено с BSD awk (OSX El Capitan, 20070501) и GNU awk 4.1.4.
Насколько я знаю, у agetty нет такой возможности. Поэтому вам придется сделать это самостоятельно, например, с помощью скрипта bash/perl/whatever, который сохраняет состояние, если был логин previews для этой загрузки (каталог перезапускается после перезагрузки), а затем запускает соответствующий getty.
вопрос в том, действительно ли вам нужно делать эту работу, вы также можете просто переключиться на tty2 (используя alt+F2) и войти туда как обычно.
regards
Боковой ответ :В дополнение к переключению на другой tty (, как описано в ответе treaki ), вы можете заменить нового пользователя на текущего пользователя
su otherusername
Когда вы выйдете из оболочки другого пользователя, вы вернетесь в свою сессию.
(Некоторые считают, что su
для переключения на учетную запись суперпользователя. На самом деле, это «замещающий пользователь», позволяющий вводить команды от имени другого пользователя. Если вы не вошли в систему как пользователь root, при вводе команды su otherusername
вам будет предложено ввести пароль другого пользователя. Обратите внимание, что su
не запускает обычные .profile
или сценарии ресурсов оболочки; он оставляет ваш текущий рабочий каталог и переменные окружения в новой оболочке, запущенной другим пользователем. Если вам нужен полный сеанс входа в систему, используйте опцию дефиса сsu
:
su - otherusername
)
Это то, чем я сейчас пользуюсь:
# systemctl edit getty@tty1
, но вместо этого запустите пользовательский скрипт:
[Service]
Type=simple
ExecStart=
ExecStart=/home/[USER]/.tty1
cat /home/[USER]/.tty1
:
#!/usr/bin/bash
date &> /run/user/1000/tty1started
if [ -f /run/user/1000/tty1started ] ; then
/usr/bin/agetty --noclear tty1 $TERM
else
/usr/bin/agetty --autologin p --noclear tty1 $TERM
fi
(обязательно chmod +x
ваш скрипт)
date
это потому, что я также использую это для других вещей, но проверка на самом деле только подтверждает существование файла(touch
будет достаточно ). Файл записывается в ОЗУ (в /run
), поэтому он автоматически удаляется.
Примечания:
1000
на свой идентификатор пользователя(id -u
)pam
и ioctl
, но все работает нормально