Кажется, что нет стандартного инструмента CLI, но xkb-switch - это небольшой инструмент с открытым исходным кодом для выполнения задания. Просто проверьте его с Ubuntu 16.04.4 LTS, и он работает безупречно.
$ xkb-switch # display current group
ua
$ xkb-switch -l # list groups
us
ua
$ xkb-switch -s us # switch to a named group
$
Это выглядит лучше, чем другие решения, потому что setxkbmap
Если ваш ~/.config/kxkbrc использует LayoutLoopCount (например, он меньше, чем общее количество макетов, перечисленных в LayoutList), например:
LayoutList=us,ua,th,de
LayoutLoopCount=2
Options=grp_led:scroll,grp:rwin_switch,compose:menu,lv3:ralt_switch,
nbsp:level2,grp:rctrl_toggle,misc:typo
, тогда xkb-switch позволит вам переключаться между макетами в текущей группе.
Я заметил ваш комментарий:
Прямо перед включением экранной заставки я хочу переключиться на английский, чтобы он легко ввести пароль, когда я вернусь.Это была моя цель, поэтому вот ответ: для этого вам нужно только обернуть его в скрипт, подключающийся к dbus-monitor, как обсуждалось Х переключатель .