Вам не нужно приостанавливать историю Vim. Фактические данные образуют дерево, и вы можете получить его с помощью функции undotree ()
. Есть, конечно, ряд плагинов, которые превращают это во что-то более удобное для пользователя, например. gundo , mundo и undotree . Если вы также разрешите отмену сохранения (см. : h undo-persistence
), вы можете легко перемещаться по всей истории изменений файла.
agetty
ожидает, что программа будет запущена для параметра -l
. Вы можете сделать это (например) сценарием Perl и сделать , что предоставит параметры, например, вызвать этот сценарий myshell
#!/usr/bin/perl
exec 'bash --rcfile myprofile'
и использовать путь к myshell
в команда agetty
.
Я использовал Perl , потому что он не читает ваш профиль bash
(или sh
). Если вы используете сценарий, который запускает / bin / sh
, он может прочитать пользовательский .profile
(что, похоже, противоречит вашим намерениям). Функция exec
предоставляется на других языках сценариев (включая sh
и bash
).
Вы можете подумать, что это излишество, но вместо использования getty и запуска оболочки на последовательной линии, вы можете попробовать использовать SLIP, Serial Line Internet Protocol. Это превращает ваш последовательный порт в сетевой интерфейс, через который вы можете подключить несколько логинов одновременно, используя ssh или что-то еще, отправлять файлы с помощью rsync и так далее, и все это с преимуществом надежности и обнаружения ошибок.
Он прост в настройке и использовании, если ваше ядро поддерживает его (обычно так и бывает). Самый простой способ - это команда slattach
, которая обычно находится в пакете net-tools
. На одной машине дайте команду
sudo slattach -p cslip -s 19200 /dev/ttyS0 &
sudo ifconfig sl0 192.168.1.2 pointopoint 192.168.1.3
где первая команда указывает скорость передачи данных и последовательное устройство, а вторая - IP-адрес этой машины и другой машины. На другом конце дайте те же команды, поменяв местами два IP-адреса. Выберите набор адресов, которые вы еще не используете.