Пробел в пути к каталогу в переменной $ path в Linux
3654
Brad
Я использую Red Hat Enterprise 5.3 и пытаюсь добавить каталог в переменную $ path, но в ней есть пробелы. Переменная $ path разделена пробелами, так как я могу отличить пространство в абсолютном пути от пространства, которое разделяет пути?
рад, что это помечено как "tcsh", но вы должны явно указать в теле (или заголовке, или обоих) оболочку, которую вы используете
quack quixote 15 лет назад
0
Согласовано. Я тот, кто добавил тег tcsh, но это было мое предположение. Брэд - я правильно понял?
Doug Harris 15 лет назад
0
3 ответа на вопрос
2
Javier
Разве $ PATH не разделен двоеточием? В любом случае, вам нужно покинуть пространство с \. Если бы вы хотели иметь каталог с именем my dir, вы бы сделали что-то вроде этого:
PATH=/bin /usr/bin /home/user/my\ dir /sbin
Этот путь просто пример, не копируйте его дословно.
1
Doug Harris
Похоже, что Брэд использует csh или tcsh - у этих оболочек есть и $ path, и $ PATH. Оболочка поддерживает оба, когда вы меняете один.
$ path работает так, как вы это показываете, но когда я повторяю $ PATH, вместо каждого пробела в пути появляется пробел.
Brad 15 лет назад
0
Какую оболочку вы используете?
Doug Harris 15 лет назад
0
1
Brad
В моем случае (с использованием csh) переменная $ PATH мешала работе и не позволяла работать $ path, поэтому вот обходной путь:
set savePATH = $PATH set path = ($path /usr/my\ dir/has\ spaces\ in\ it) set PATH = ($savePATH)
Предостережение: пути с пробелами должны добавляться последними, если после этого вы добавите непустой путь к пути, он автоматически обновит $ PATH и прервет его снова.
но теперь вы оставили каталог с пробелами в $ PATH; Вы должны "установить savePATH = ($ PATH: / usr / my \ dir / has \ space \ in \ it)".
quack quixote 15 лет назад
0