Эмулятор терминала для CygWin?

Поскольку другие уже упомянули -- используется для разграничивания опций от аргументов. Если Вы выполняете программу и указываете какие-либо аргументы, программа не имеет никакого способа различать, если указанные аргументы должны быть интерпретированы как параметр командной строки или аргумент. Это - причина, почему префикс для опций был представлен - / -- или / на окнах, т.е. -rf,--help или /?

Поскольку у Вас могут быть файлы, начинающиеся с такого префикса или любого другого специального имени, которое могло быть интерпретировано -- был представлен для разграничивания параметров командной строки от нормальных аргументов, т.е. каждого аргумента после -- не будет рассматриваться как параметр командной строки, но как аргумент. getopt (1), стандартное решение проанализировать аргументы, например, поддержки -- разделитель, что означает любое использование программы getopt автоматически поддержки -- разделитель.

Если Вы хотите работать с файлами, запускающимися со специальных символов как - можно также просто добавить ./ перед ними, поскольку они теперь не запускают с - таким образом, они не будут интерпретироваться как параметр командной строки для Вашего примера, это было бы mkdir ./--abc

11
21.02.2014, 18:56
3 ответа

Проведя сегодня небольшое исследование эмуляторов терминала, я чувствую необходимость приветствовать достоинства xterm . Этот FAQ описывает множество ошибок в других эмуляторах терминалов, которые стремятся быть совместимыми с xterm или VT-100. Вы также можете использовать vttest , чтобы самостоятельно выявить эти проблемы. Что отталкивает многих от xterm , так это отсутствие конфигурации меню. Это заставляет многих думать, что xterm вообще не настраивается, однако на самом деле он легко настраивается, это просто нужно сделать с помощью таких файлов, как .Xresources или параметров командной строки. .

Другие нарекания включают отсутствие поддержки буфера обмена и, следовательно, отсутствие копирования / вставки с помощью Ctrl-Shift-C / Ctrl-Shift-V по умолчанию, однако это может быть преодоленным . Другой недостаток - отсутствие вкладок, однако многие продвинутые пользователи Linux предпочитают использовать tmux или GNU screen , которые предоставляют аналогичные функции.

Это подводит меня к настоящему ответу на ваш вопрос - экран можно использовать для подключения к последовательному порту и должен работать на Cygwin , несмотря на / dev / ttySX не отображается с ls . Благодаря этому вы сможете использовать любой эмулятор терминала, который вам нравится, будь то xterm или mintty . xterm не обладает многими современными функциями и может быть не для всех, но он работает, учитывая, что трудно сопоставить то, что происходит под капотом.

В случае, если ссылка не работает, вот синтаксис для использования screen в качестве последовательного терминала:

screen /dev/ttySX baud_rate,cs8|cs7,ixon|-ixon,ixoff|-ixoff,istrip|-istrip
7
27.01.2020, 19:58

Я считаю, что screen сделает это, cygwin сопоставляет COM-порты с устройствами / dev / stty *, а screen будет использовать устройство для подключения .

Из man screen

Если указано имя tty (символьное специальное устройство) (например, "/ dev / ttya") - указано в качестве первого параметра, то окно подключается напрямую на это устройство. Этот тип окна похож на "screen cu -l / dev / ttya". На узле устройства требуется доступ для чтения и записи, на узле предпринимается попытка монопольного открытия, чтобы пометить линию соединения как занятую.Допускается необязательный параметр, состоящий из списка флагов, разделенных запятыми в нотации, используемой stty (1):

3
27.01.2020, 19:58

К моему большому удивлению, picocom из коробки сработал для того, что мне нужно было сделать - поговорить со встроенными устройствами. По какой-то причине нет пакета cygwin, но собрать его так же просто, как

git clone https://github.com/npat-efault/picocom; cd picocom && make

. Предполагая, что ваше устройство отображается как COM3 под окнами, запустите с

./picocom -b 115200 /dev/ttyS2
7
27.01.2020, 19:58

Теги

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