Может быть, это связано с проблемой, описанной здесь ? Если это так, то предложенное исправление обновляет zsh до версии 5.0.5.
Многострочные команды в истории возвращают только первую строку с двойной обратной косой чертой
Я использую oh-my-zsh со следующей конфигурацией истории:
setopt appendhistory autocd extendedglob setopt EXTENDED_HISTORY setopt histignoredups sharehistory
В истории поиска Ctrl+ Rи клавиши со стрелками установлены по умолчанию, то есть:
% bindkey '^r' "^R" history-incremental-search-backwar
Однако через некоторое время я сталкиваюсь с проблемой, что при поиске команд в истории я получаю первую строку команды с двойной обратной косой чертой в конце, но не другие строки. Фактически, это происходит только тогда, когда обновляется файл истории, если команда свежая и я ищу ее в той же оболочке, в которую я ее ввел, я получу ее правильно, но если я закрою оболочку и снова открою ее, и попытаться извлечь команду из истории, я получу это так:
-> входная команда:
echo \ "multi-line command"
результат при использовании поиска по истории (bck-i-search: echo
):
эхо \
Кто-нибудь знает, что может быть причиной этого? Информация, которую я нашел здесь и в других местах, не помогла :(
Далее я добавляю выдержку из моей истории:
4453* cd place 4454* someCommand -d folder \\ 4455* --opt 1 \\ 4456* -foo1 bar1 -foo2 bar2 -aeps 0 0.01 0.01 >&! output.log & 4457* du -sh 4460* ls * 4461* exit
Версия zsh для двух хостов, которые не работают: 5.0.2 и 5.0.5.
Затем я добавил одну многострочную команду из-за синтаксиса:
3723 echo $ZSH_VERSION 3724 for x in 1 2 3; do echo $x \ndone 3725* someCommand -d folder \\
который работает нормально. Многострочная цитата, как в:
echo "lala dquote> dump dquote> dump dquote> ok"
в результате чего:
3732 echo "lala\ndump\ndump\nok"
и который тоже работает нормально.
Этого не происходит на моей локальной машине (zsh версии 5.0.7), что также приводит к многострочным командам с \ n вместо double \:
15365 echo \\n multi \\n line \\n command
А также на другом удаленном сервере (4.3.11):
14133 example -d folder \\n -pp mpp \\n -c mcc \\n -x mxxz \\n -r mrr \\n -e 0 \\n -o out \\n -debug
На всех машинах я использую одинаковые файлы конфигурации.
1 ответ на вопрос
Похожие вопросы
-
2
.profile в Mac OS X?
-
6
Какие функции Zsh вы используете?
-
5
Прозрачная командная строка в Vista?
-
-
4
Используйте портфель Windows из командной строки
-
4
Почему некоторые команды не существуют?
-
11
Есть ли простой способ разделить mp3 файлы?
-
2
Как я могу получить OSX Terminal.app для открытия полноэкранного режима, а не каскадного?
-
4
Синхронизация удаленных папок в Linux
-
6
Полноэкранная командная строка или замена Vista
-
6
Хорошее руководство по PowerShell, начало работы с более продвинутым использованием