Указать непечатаемые ключи в качестве входных данных для команды оболочки
Ubuntu 12.04 LTS Server 64
У меня есть сценарий оболочки, который работает в автоматическом режиме.
Сценарий выполняет команду, которая отображает пользовательский интерфейс curses / ncurses, который обычно ожидает, что пользователь будет перемещаться по меню с помощью клавиатуры.
Чтобы эмулировать пользовательскую навигацию, мне нужно ввести последовательность клавиш:
echo -e "{up-arrow} {space-bar} {enter-key}" | mycommand
Буквальное пространство " "
может работать на {space-bar}
А также "\n"
может работать на {enter-key}
А как уточнить {up-arrow}
?
ПРИМЕЧАНИЕ. В своем исследовании я обнаружил некоторые признаки того, что клавиши со стрелками относятся к категории "нажатие клавиши", а не "нажатие клавиши", поэтому, возможно, не представляется возможным передать клавиши со стрелками в качестве ввода?
Благодарю.
1 ответ
Ну, вы можете использовать код символов Unicode. Некоторые примеры:
- Для космоса:
echo -e "\u0020"
- Для новой строки (введите):
echo -e "\u000A"
- Для стрелки вверх:
echo -e "\u2191"
См. Список символов Unicode для всех из них.