Периодический ввод в Windows терминал gitbash

388
wutch

Мой терминал bash получает пробел (chr 32), за которым сразу же следует возвратный пробел (chr 8) каждые 5 секунд (почти точно). Эффекты не заметны при наборе текста, так как добавленное пространство удаляется в течение нескольких миллисекунд, однако у него есть другие более очевидные и раздражающие побочные эффекты. Например, при просмотре файла через less, пробел делает это автоматически пролистывать каждые 5 секунд. Это, помимо прочего, затрудняет работу, и я не могу понять, почему это происходит.

Я на Windows 7, использую git через терминал gitbash, который входит в пакетную загрузку с git-scm.com.

Я получаю такое же поведение, когда просто запускаю mintty.exeпрограмму, в которую помещается C:\Program Files\Git\usr\bin. Я удостоверился, чтобы опустошить мой .bashrc. Я также попытался перезапустить, а также удалить и переустановить. Также стоит отметить, что поведение продолжается, даже если терминал не является активным сфокусированным окном.

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

0
Есть ли у вас похожее поведение, например, в cmd и Powershell? simlev 7 лет назад 1
@Simlev, нет. Только Mingw / Mintty Bash окно. На самом деле, каждое окно bash, если их больше одного. wutch 7 лет назад 0

1 ответ на вопрос

0
ivan_pozdeev

Скорее всего, это какой-то конфликт в результате вашего PATH. Например, здесь я получаю сообщение об ошибке при запуске, потому что /etc/bash.bashrcищет, getentкоторого нет в MSYS Git, но присутствует в Cygwin, о котором я расскажу далее PATH.

.bashrcэто не единственный автоматически анализируемый файл. Там же /etc/profile, /etc/profile.d/*, /etc/bash.*и ~/.bash*.

Чтобы локализовать проблему,

  • переименуйте, c:\Program Files\Git\etcчтобы исключить файлы запуска и любые другие файлы, изменяющие поведение, например /etc/inputrc. Если проблема не устранена, найдите причину в списке загруженных модулей (можно просмотреть с помощью procexp).
  • запустить, bash -i --noprofile --norcчтобы отключить только файлы запуска.
  • переименуйте отдельные файлы / папки запуска (половина суммы за раз, чтобы точно определить виновника с логарифмическим числом шагов ).
У меня были некоторые проблемы с использованием флагов `--noprofile` и` --norc`, но я попытался переименовать каталог / etc. К сожалению, несмотря на несколько сообщений об ошибках, связанных с отсутствием / etc, у меня все еще была проблема wutch 7 лет назад 0
@wutch, если проблема присутствует даже без каких-либо файлов запуска, то, как я уже писал, это либо какой-то модуль, загружаемый из неправильного места, либо какое-то другое установленное программное обеспечение, внедряющее себя в процесс, или какая-то программа, работающая в фоновом режиме, отправляет нажатия клавиш окно. ivan_pozdeev 7 лет назад 0