Как изменить определенный путь из переменной окружения PATH?

Я неправильно объявил переменную, и теперь в ней есть две косые черты. Как мне удалить / исправить это?

PATH=...ols-1.3-62308//bin:/bin

Спасибо.

4
задан 29 December 2010 в 13:14

3 ответа

В этом конкретном примере ничего не делать: двойная косая черта точно эквивалентна одиночной косой черте .

Если вы действительно хотите удалить двойные слэши: PATH=${PATH//\/\//\/}

Удаление первой записи: PATH=${PATH#*:}
Удаление последней записи: PATH=${PATH%:*}
Удаление запись из середины более неудобна и не стоит в командной строке.

Есть способы получить значение переменной в редакторе командной строки:

  • В zsh вы просто запустите vared PATH.
  • В bash запустите history -s "PATH=$PATH", чтобы вставить назначение в историю команд, затем нажмите Up , чтобы вызвать последнюю запись и отредактировать ее. (Zsh: print -s PATH=$PATH)
  • В bash введите PATH=$PATH, затем нажмите Ctrl + Meta + E ( shell-expand-line). (Zsh: нажмите Ctrl + X * , чтобы развернуть слово на или перед курсором.)
0
ответ дан 29 December 2010 в 13:14

Существует аналогичный пост в stackoverflow : Какой самый элегантный способ удалить путь из переменной $ PATH в Bash? . Просто посмотрите.

0
ответ дан 29 December 2010 в 13:14

Вы захотите включать $PATH

при использовании удара, Вы обычно хотите установить что-то как строка ниже в Вашем .bashrc файле:

PATH=$PATH:/path/to/new/directory/

т.е. $PATH Ваш ПУТЬ currnet

и /path/to/new/directory путь, где новые двоичные файлы хранятся.

в моем случае я склонен иметь некоторые сценарии в своем $HOME/bin, таким образом, я сделал бы: PATH=$PATH:$HOME/bin

затем удостоверьтесь, что получили файл для применения изменений в текущей оболочке.

т.е. source ~/.bashrc или . ~/.bashrc

1
ответ дан 29 December 2010 в 13:14

Другие вопросы по тегам:

Похожие вопросы: