Я испортил свою переменную пути и теперь некоторые приложения, что я выполняю ошибочную Команду высказывания повышения, Не Найденную (ошибка 127) для команд как дата и сон. Эти команды хорошо работают при прямом выполнении в оболочке.
Я предполагаю, что это имеет некоторое отношение к уродливой переменной $PATH и потребности знать, как сбросить ее. Я удалил файлы ~/.bashrc, ~/.bash_profile,/etc/bash.bashrc, и ~/.bashrc и ~/.profile.
Что другие файлы могли содержать мой $PATH? Там некоторый более простой путь состоит в том, чтобы сбросить Путь, чем роют в бесчисленные файлы, которые могли содержать мой путь?
Отметьте, эта проблема пути только с моим пользователем. Я сделал проверочного пользователя в своей системе, и путь был прекрасен, назад к нормальному.
ОБНОВЛЕНИЕ:Спасибо. я не знаю, какой из файлов, которые я удалил, сделал это, но вещи работают снова. Вы парни сделали то, что не могли 'Эксперты'. И да, Chris, Вы были правы. Настройки ПУТИ, которые я сделал, были в bash_login. Но так или иначе это работало без меня удаляющий те настройки. Я думаю, что это, возможно, было, потому что я использовал этот prefpane под названием 'RCEnvironment', и я ввел путь с кавычками и: ПУТЬ в нем. Я не знаю, берет ли это кавычки, и это не заменяет: $PATH, так, чтобы, вероятно, был корень ошибки. Я забыл, что у меня даже было это prefpane!
Если у Вас есть ~/.MacOSX/environment.plist файл, проверьте его, чтобы видеть, обеспечивает ли он значение ПУТИ по умолчанию.
Если это находится в формате XML (plists, может быть во многих форматах), можно отредактировать с любым текстовым редактором. Проверьте его с plutil -lint ~/.MacOSX/environment.plist
если Вы редактируете его вручную.
Или, можно использовать команды как значения по умолчанию или PlistBuddy для создания управляемых модификаций к XML или двоичному формату plist файлами.
Можно всегда устанавливать собственный ПУТЬ в любом из файлов инициализации оболочки.
Поместите что-то как следующее в Ваших из файлов запуска Вашей оболочки (.bashrc
, или .bash_profile
/.bash_login
/.profile
):
PATH=/usr/bin:/bin:/usr/sbin:/sbin
export PATH
# add custom, local installations to PATH
PATH=/usr/local/bin:/usr/local/sbin:"$PATH"
# add MacPorts to PATH
PATH=/opt/local/bin:/opt/local/sbin:"$PATH"
Это переопределит любой ПУТЬ по умолчанию, установлен, когда оболочка запускается (первое PATH=
не использует $PATH
, таким образом, это будет всегда начинаться с тем, что Вы даете ему).
Только один из файлов 'входа в систему' будет когда-либо использоваться (первый, который существует и читаем из ~/.bash_profile
, ~/.bash_login
, и ~/.profile
будет использоваться). .profile
для назад совместимости с другими оболочками — если Вы используете ее, несомненно, сохраните ее свободной от синтаксиса, который характерен для удара. Если Вы идете с .bash_login
или .bash_profile
(они функционально эквивалентны за исключением имен), затем используйте строку как [[ -e ~/.bashrc -a -r ~/.bashrc ]] && source ~/.bashrc ]]
около вершины так, чтобы оболочки входа в систему также сделали настройки в Вашем .bashrc
.
Если Вы хотите, чтобы все экземпляры удара имели тот же ПУТЬ, то используйте .bashrc
. Если Вы часто изменяете в интерактивном режиме ПУТЬ единственной оболочки из командной строки и хотите использовать, который изменил ПУТЬ в подоболочках (случаи, который, вероятно, не ужасно распространен), то необходимо поместить операторы в один из файлов 'входа в систему' вместо этого. Выберите только один из файлов входа в систему и используйте его.