Что специальные символы состоят в том, чтобы распечатать из сценария для перемещения курсора?

Если это не интерактивное или оболочка входа в систему, я думаю, что Вас оставляют с использованием ~/.zshenv. Следующее от раздела "STARTUP/SHUTDOWN FILES" в zshall(1):

Commands are then read from $ZDOTDIR/.zshenv.  If the shell is a login
shell,  commands  are  read  from  /etc/zsh/zprofile  and  then $ZDOT-
DIR/.zprofile.  Then, if the shell is interactive, commands  are  read
from  /etc/zsh/zshrc  and then $ZDOTDIR/.zshrc. Finally, if the shell
is a login shell, /etc/zsh/zlogin and $ZDOTDIR/.zlogin are read.
5
01.01.2014, 17:56
5 ответов

Если Ваш эмулятор терминала поддерживает escape-последовательности ANSI, можно переместить курсор вверх путем выполнения этого:

echo -n -e '\033[2A'

или

ruby -e 'print "\033[2A"'

Это переместит курсор 2 строки. Это работает в gnome-terminal и xterm и многие другие.

7
27.01.2020, 20:32
  • 1
    +1 Для того, чтобы заставить меня взять свои слова назад vis, нет никаких последовательностей ANSI, включающих вертикальное перемещение. –  goldilocks 01.01.2014, 23:24

Терминальное зависимое управление расположением может быть, покончили tput. Это включает основное выделение и расположение курсора. Например, для перемещения курсора для выравнивания 10 столбец 1 Вы использовали бы tput cup 10 1. Посмотрите tput страницы справочника.

8
27.01.2020, 20:32
  • 1
    Это полезно. Однако я ищу символы и как использовать escape-последовательность для вывода из сценария Ruby, который, по-видимому, работает тот же путь любым сценарием оболочки. –  B Seven 01.01.2014, 17:54
  • 2
    Ruby, по-видимому, включает привязку проклятий, которую могло бы стоить изучить. Библиотека проклятий является наиболее распространенным способом создания TUI (терминал UI), приложения для *отклоняют, и включает функции для расположения курсора на экране. –  goldilocks 01.01.2014, 19:38

Те специальные символы от 7-разрядного набора ASCII, который содержит эти 128 символов в этой таблице; нотацию Escape оболочки не показывают там, но \r 14-й символ (десятичное значение 13), CR (возврат каретки). Звонок является 8-м символом (десятичное значение 7). \n, известный в *отклоняют и полученные области как новая строка, 11-й символ (десятичное значение 10), LF (перевод строки).

Большая часть набора ASCII является нормальными алфавитно-цифровыми символами. Большинство "специальных символов" в начале таблицы на самом деле не служит никакой цели сегодня (новая строка, и т.д., будучи исключениями). ANSI совместимые терминалы (включая самый современный *отклоняют базирующиеся виртуальные) использует ESC (десятичные 27, восьмеричные 33) для запуска специальных управляющих последовательностей (\033...) - часть из который, как Mark Plotnick указывает в своем ответе, допускает вертикальное перемещение.

В самой таблице существует VT (десятичные 11), вертикальная вкладка, но это спускается. Нет никаких отдельных символов, допускающих восходящее движение.

5
27.01.2020, 20:32

В дополнение к предыдущим ответам можно хотеть посмотреть на ncurses.

Ncurses является программным обеспечением для управления записью в консольный экран под Unix, Linux и другими операционными системами.

- www.gnu.org

0
27.01.2020, 20:32

Для списка специальных символов используйте "эхо человека"

Но перемещая курсор строка не работает.

-2
27.01.2020, 20:32

Теги

Похожие вопросы