Intereting Posts
Howto автоматически монтирует окна-разделы с помощью / etc / fstab Ручная установка scilab не работает Как изменить раскладку клавиатуры для запуска (подсказка парольной фразы) Будет ли 12.04 получать LibreOffice 3.6 и позже? Монитор CTR для настольных компьютеров засыпает перед регистрацией и не просыпается! Почему мой внешний жесткий диск не загружается Каковы пакеты и библиотеки, необходимые для печати файла в формате pdf? разрешения по умолчанию для / var / www Установите Ubuntu без лицензии Windows void Получить gmusicbrowser для воспроизведения музыкальных файлов .m4a? Как сделать несколько дисков одним большим жестким диском? Проверить состояние блокировки ключей из командной строки Ослаблять приложения при получении вывода от Mumble Посмотрите, включен ли режим sudo (пароль кэшируется) в командной строке Может разрешать имя хоста через dns с помощью `host`, но не может ping / ssh / ntp

Исходный файл Shell Script не сохранен

Я сохранил скрипт оболочки в bin (созданный мной). Когда я запускаю программу, чтобы избежать ./ для запуска скрипта мне нужно скопировать скрипт в один из каталогов, заданных переменной PATH. Созданный каталог bin не входит в список путей. Итак, чтобы добавить в список PATH:

export PATH=~/bin:"$PATH" 

Но этот каталог не сохраняется в списке PATH. Когда я открываю новое окно терминала, мне нужно его снова экспортировать, чтобы запустить скрипт. Как я могу добавить его в список PATH на постоянной основе? Также, если я попытаюсь переместить скрипт в настоящий каталог PATH, он говорит о РАЗРЕШЕНИИ РАЗРЕШЕНИЯ. Должен ли я переместить его, став пользователем root?

Вы можете добавить export PATH=~/bin:"$PATH" в ваш файл ~/.profile . Добавьте его в нижнюю часть, затем сохраните, затем снова подключитесь к SSH.

Кроме того, если вы хотите, чтобы это изменение было системным для любого пользователя, вы можете отредактировать путь в /etc/environment .

Этот работал для меня.

Откройте свой .bashrc gedit ~/.bashrc

Текстовый редактор открывается.

 if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi 

Вставьте это и отредактируйте .bashrc. После закрытия текстового редактора source ~/.bashrc

Если вы получите отказ от прав, это означает, что скрипт не находится в исполняемом формате. chmod 755 program_name Это должно делать работу. Откройте новый терминал, и он будет работать.

Добавление настраиваемого исходного каталога dir в $ PATH

  1. Отредактируйте файл ~/.profile
  2. Добавьте эту строку после всех связанных с $ PATH vars:

    export PATH="$PATH:$HOME/your-home-dir-path"

  3. Сохранить файл.

  4. Выход / Перезапуск.

Добавление этого в ваш ~/.profile включает это изменение в терминал и текстовый режим.

На всякий случай ваш собственный путь ~/bin или ~/.local/bin !!!

Как уже говорилось в вопросительном комментарии, эти местоположения уже включены в PATH в Ubuntu!

Вы можете просто:

  1. Создайте каталог (например, ~/bin ).
  2. Скопируйте свой скрипт на него.
  3. Измените его разрешения на выполнение с помощью команды:

    chmod +x ~/bin/script.sh

  4. Выйти / войти. Кроме того, вы можете выполнить source ~/.profile файл source ~/.profile

Как уже упоминалось, ваш файл ~ / .profile уже должен содержать следующее:

 # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi 

Тем не менее, похоже, что вы запускаете интерактивную оболочку bash без входа (т. Е. Вы не подключаетесь через ssh, а запускаете терминал из среды рабочего стола), которая не читает ~ / .profile, а вместо ~ / .bashrc читается как объяснено здесь .

Вы можете изменить ~ / .bashrc, чтобы добавить путь или прочитать ~ / .profile для не-login-оболочек, как объяснено здесь, но, как сказал Джейкоб, если вы выходите из системы / login, это не требуется.

Чтобы понять разницу между логином и оболочкой без входа, см. Этот ответ .

Когда вы запускаете

 export PATH=~/bin:"$PATH" 

вы устанавливаете переменную среды PATH и экспортируете ее в рабочие родительские терминалы. Это как сказать: «новая переменная PATH – это, распространяйте слово». Он работает, но как только вы перезагрузите компьютер, PATH вернется к настроенному. Чтобы сделать изменение постоянным, вам нужно будет отредактировать файл .profile в домашней папке. Обычно это имеет значение:

  # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi 

который автоматически будет содержать папку $ HOME / bin, если она существует. Но если это не так, вы можете просто добавить либо вышеприведенные команды, либо:

  export PATH="$PATH:$HOME/bin" 

к файлу, и эта папка будет включена в PATH на каждом сеансе вашего пользователя.

Вам нужны права root для записи в каталоге / usr / bin, но это не обязательно, если вы изменяете файл .profile.