Я хотел бы изменить ярлык по умолчанию, чтобы переключаться назад и вперед на tty. По умолчанию это Ctrl + Alt + F #. Я попытался создать собственный ярлык, используя настройки клавиатуры Ubuntu, но он работал только при использовании графического интерфейса, когда я переключаюсь обратно на tty, он не работает. Поэтому мне нужно выяснить, как изменить привязку по умолчанию сочетания клавиш ctrl + alt + F #, чтобы один ключ переключался между двумя TTY.
Вы можете использовать bind
, чтобы привязать клавишу к какой-либо функции. Вот что я сделал:
bind '"\ea": ". ~/newScript.sh\n" '
Здесь newScript.sh
- файл, который изменяет tty, а \ea
означает, что всякий раз, когда нажимается Alt+A
, скрипт выполняется.
Содержимое newScript.sh
:
#! /bin/bash
ttyNum="$(tty)"
ttyNum=$(echo ${ttyNum##*y})
ttyNum=$(( (ttyNum +1) % 7))
chvt $ttyNum
Обратите внимание, что если вы хотите сохранить привязки клавиш на постоянной основе, вы можете сохранить их в файле `~ / .inputrc '. Для получения дополнительной информации вы можете посетить эту ссылку: http://www.techrepublic.com/article/find-and-bind-key-sequence-in-bash/5683375
[ 1115] Обновление: Вы можете сохранить строку bind
в своем файле ~/.bashrc
, чтобы вам не пришлось делать это снова.
Для этого есть команда chvt
.
chvt
обозначает Виртуальный Терминал. Он принимает одну опцию, которая представляет собой число, указывающее виртуальный терминал, на который нужно переключиться.
Например, если вы вошли в систему на первом виртуальном терминале и хотите переключиться на 7-й, где xserver обычно отображает GUI, запустите chvt
следующим образом:
chvt 7
чтобы вернуться к 1-му виртуальному терминалу, введите:
chvt 1
Так что все, что вам нужно сделать, это добавить эту команду к 7 сочетаниям клавиш, и вы можете переключаться.
РЕДАКТИРОВАТЬ: глупо меня! Просто посмотрите в файл /etc/console-setup/remap.inc
В этом файле вы найдете все, что вам нужно. В любом случае объяснения приводятся ниже.
К сожалению, «связывание» будет работать только с сеансом оболочки.
Что вам нужно сделать, это изменить отображение консоли. Вы можете сделать это с помощью программы "loadkeys" (man loadkeys). Во-первых, дамп текущих сопоставлений, чтобы увидеть, как должен выглядеть формат файла:
dumpkeys > default_keys.txt
Обратите внимание, что вам нужно сделать это из текстовой консоли, а не X, поэтому сначала нажмите Ctrl-Alt-F1 переключиться на один!
Вот пример строки из этого файла:
alt keycode 59 = Console_1
Это означает, что клавиша, генерирующая код 59, нажата с модификатором «alt» (определенным где-то еще). в этом файле) сгенерирует событие «Console_1» - переключение на виртуальную консоль 1.
Как узнать, какой ключ генерирует какой код? Используйте программу showkey для этого. Я запускаю программу и нажимаю «F1»:
komp $ showkey
keycode 59 press
keycode 59 release
Единственный способ выйти из этой программы - закрыть глаза и рассмотреть природу с открытым исходным кодом в течение десяти секунд. Или просто воздерживаться от прикосновения к клавиатуре в течение десяти секунд, это тоже работает. Используйте этот метод, чтобы выяснить, какую строку в файле раскладки вам потребуется для изменения раскладок клавиш.
Скажем, вы хотите переключиться на консоль 1, используя "Ctrl 1". Вы обнаружите, что код клавиши для 1 равен 2. Сохраните следующую строку в файле с именем «myownkeys.txt»:
control keycode 2 = Console_1
Переключитесь на текстовую консоль (если вы еще этого не сделали) и запустите
sudo loadkeys myownkeys.txt
Presto, Ctrl-1 теперь переместит вас в консоль 1. Добавьте больше строк в ваши файлы для ваших ярлыков. Если вы хотите сделать его постоянным, вы можете [РЕДАКТИРОВАТЬ] изменить файл /etc/console-setup/remap.inc
Кстати, кроме Console_n у вас также есть "Decr_console" и "Incr_Console" - - переключиться на консоль слева и консоль справа соответственно. По умолчанию они привязаны к alt-left и alt-right.