Автозаполнение bash ведет себя странно после обновления
Поскольку bash был обновлен совсем недавно, когда я пытаюсь выполнить автозаполнение с помощью вкладок во время записи компакт-диска, я получаю следующее...
tony@tony-HP:~$ cd Mucword=1
words[0]=${!ref}${COMP_WORDS[i]}
words[1]=${!ref}${COMP_WORDS[i]}
cword=1
words=("${@:3:2}")
cword="$3"
cur="$3"
cur="$3"
cword="$3"
prev="$3"
words=("${@:3:2}")
compgen -d -- "$quoted"
sic/
Здесь я напечатал cd Mu
в командной строке и с вкладками, и после того, как bash рвет, информация, которая мне не нужна, добавляет sic/
после определения моего музыкального каталога. Что изменилось? Есть ли параметр, который был установлен по умолчанию в противном случае из-за проблем безопасности?
ps Нажав на кнопку возврата изменений, вы ожидаете.
2 ответа
Я знаю, что вопрос устарел, но я отвечу, если у кого-то возникнет такая же проблема. Это можно исправить, набрав 'bash + v' в терминале. Вы, вероятно, набрали 'bash -v', пытаясь увидеть версию bash (как я), но вместо этого она делает что-то еще. PS, чтобы увидеть версию bash, используйте 'bash --version'
Ну, этот ответ теперь тоже немного стар. Тем не менее, это помогло мне, но это также неправильно. Тем не менее, это привело меня к решению, так что спасибо, Бабис.
Запуск bash +v запускает новую оболочку поверх старой.
Если вы хотите изменить поведение вашей текущей оболочки, используйте команду "set":
set +v
Это говорит bash отключить печать входных строк при их чтении, причем источником в этом случае являются функции завершения bash.
Забавно, я столкнулся с этим в Cygwin.