nmcli: как получить «последнее использованное» соединение

3

Я пытаюсь настроить сценарий подключения Wi-Fi для удаленной системы. Вы можете подключиться к сохраненному соединению с помощью этой команды:

$ sudo nmcli c up "connection name"

Бывают случаи, когда доступные сети могут меняться ... или другие детали, такие как пароль, могут измениться. Если это произойдет, человек, имеющий доступ к компьютеру, вручную сделает новое соединение с доступной сетью wifi.

Теперь мне нужно, чтобы мой скрипт выбирал профиль, начинающийся с самого последнего ( Last Used ), когда система перезагружается.

Эта команда показывает доступные соединения:

$ nmcli connection show

Теперь я ищу способ сортировки вывода по порядку Last Used .

Вы можете увидеть эту информацию с помощью интерфейса GUI:

    
задан L. D. James 16.06.2016 в 01:27
источник

1 ответ

5

Объект con имеет как TIMESTAMP (секунды с эпохи), так и поле TIMESTAMP-REAL ; возможно, первым проще всего работать. Например, вы можете вывести NAME и TIMESTAMP , а затем sort и tail результата. В сжатом режиме поля разделяются двоеточиями по умолчанию, поэтому вам нужно будет установить разделитель полей sort , например,

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1

Если вы хотите просто имя соединения, либо cut или awk , используя тот же разделитель

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1 | cut -d: -f1

или

nmcli -t -f NAME,TIMESTAMP con list | sort -t: -nk2 | tail -n1 | awk -F: '{print }'
    
ответ дан steeldriver 16.06.2016 в 01:47
источник