Я использовал это, чтобы добавить к PATH:

APXS2=/usr/local/apache/bin/apxs PATH=$PATH:/usr/local/apache/bin passenger-install-apache2-module

и мой путь теперь выглядит так:

/usr/local/jdk/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/courier-imap/sbin:/usr/lib/courier-imap/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin:

Теперь я хочу удалить это я добавил. Как это сделать?

4 ответа4

1

Лучшим способом может быть просто сохранить копию пути перед его изменением.

PATH_BAK=$PATH
PATH=...
...
PATH=$PATH_BAK
1

Просто выйдите, войдите снова и ваш PATH будет сброшен.

0

Если вы забыли создать резервную копию, вы можете использовать удаление / замену подстроки.

Удаление подстроки

${string#substring}

Замена подстроки

${string/substring/replacement}

Пожалуйста, обратитесь по этой ссылке http://www.museum.state.il.us/ismdepts/library/linuxguides/abs-guide/string-manipulation.html

0

Учитывая, что /usr /local /apache /bin нет в '... мой PATH теперь выглядит следующим образом ...' - что, по вашему мнению, вы добавили? Предполагая, что вы используете bash или ksh - вы фактически не изменили путь, потому что не экспортировали его. Поэтому я сомневаюсь, что вам нужно что-либо удалить.

Например

$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ PATH=$PATH:/foo /bin/ls
aFile
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ # PATH did not alter

Против:

$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ export PATH=$PATH:/foo
$ /bin/ls
aFile
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/foo
$ #PATH modified.

Таким образом, если вы не экспортировали новый PATH в оболочку, то вызываете команду из PATH, это не изменило.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .