В ответе в StackOverflow упоминается управляющий код \033[6n
:
Например, если вы введете:
~$ echo -e "z033[6n"; cat > foo.txt
Нажмите [ENTER] пару раз, а затем [CRTL]+[D]. Тогда попробуйте:
~$ cat -v foo.txt
^[[47;1R
Значения n и m равны 47 и 1
(спасибо Пауло Скардин)
Это может или не может сделать то, что вы ищете - у вас есть больше контекста? Если вы ищете номер столбца в текстовом файле, который вы редактируете, многие инструменты (например, nano
, vim
т.д.) Имеют отчет о текущей позиции; например, в nano
вы можете нажать Ctrl+c
, vim
может отобразить его по умолчанию в зависимости от настроек, но если нет, вы можете использовать :set ruler
для отображения строки состояния.
Если вы работаете с изменением выходных данных и вам нужно получить номер столбца, в котором появляется конкретная запись, вы можете использовать awk
для этой цели.