Я давно хотел этого, особенно возможность получить команду по тому, где она была запущена, чтобы повторно -выполнить в новом проекте (или найти каталог по команде ). Поэтому я собрал этот инструмент вместе, который сочетает в себе предыдущие решения для хранения глобальной истории CLI с интерактивным инструментом поиска под названием percol (, сопоставленным с C^R ). Это все еще гладко на первой машине, которую я начал использовать, теперь с> 2-летней историей CLI.
Это не влияет на локальную историю командной строки в том, что касается клавиш со стрелками, но позволяет довольно легко получить доступ к глобальной истории (, которую вы также можете сопоставить с чем-то другим, кроме C^R)
В качестве решения я сделал это, я по-прежнему открыт для альтернативных решений, но привожу здесь свое в качестве ссылки.
if [ -x /usr/libexec/path_helper ]; then
paths=`/usr/libexec/path_helper -s`
eval ${paths//'\$USER'/$'$USER'}
fi
это просто потому, что первый вызов path_helper
генерирует переменную пути с экранированной строкой, как показано ниже :/Users/\$USER/Library
, и мое исправление состоит в том, чтобы отменить экранирование перед оценкой.
Тем не менее, спасибо @Gilles 'ТАК -перестань быть злым' за помощь в выявлении проблемы.