Додати папку скриптів bash до шляху?


16

У папці додатків є декілька скриптів bash, які я хотів би використати так, ніби вони на моєму шляху. Якщо вони були прямими програмами, я просто додавав би каталог до ~ / .bashrc, але це сценарії.

наприклад:

~/a_dir/another_dir/foo.sh
~/a_dir/another_dir/foo-gui.sh

Чи є хороший спосіб налаштувати шлях, щоб я міг їх використовувати з будь-якого каталогу?

наприклад:

totally/different/path$ bash foo.sh

ви не зможете це зробити bash foo.sh, але з foo.sh, після надання дозволу exec та введення їх у $ PATH.
elias

Відповіді:


21

Так, ви можете додати будь-який каталог до системного шляху. Один із способів зробити це - оновлення визначення PATH (екологічної змінної). Ви можете зробити це у своєму .bashrc, додавши наступні рядки:

PATH="/your/script/dir:${PATH}"
export PATH

Мені подобається додавати свої сценарії до $HOME/.local/bin/(який є прихованим каталогом), щоб мій домашній директор залишався чистішим.

Ваш каталог не буде вставлено в змінну PATH одразу, якщо ви не запустите source .bashrc.

Ви можете додати до каталогу кілька каталогів, пам’ятайте про це. Будь ласка, зверніться до документації BASH, якщо ви не розумієте код.

Попередній метод працюватиме лише для вашого користувача. Якщо вам потрібно додати каталог сценаріїв для всіх користувачів, виконайте це як bodhi.zazen та додайте свої сценарії до /usr/local/bin.


Додавання його перед тим, як замінить системні сценарії - це означає, що їх можна легко замінити, що не завжди добре.
Вільф

9

Найкращим методом IMO є додавання сценаріїв до ~ / bin

mkdir ~/bin

~/binмає бути автоматично додано до вашого шляху. Якщо ні, додайте це до~/.bashrc

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

Якщо ви хочете, щоб вони були доступними для всіх користувачів, додайте їх до /usr/local/bin


У цьому випадку, оскільки це сценарії з додатків, я б радив покласти символічні посилання для сценаріїв ~/binдля кращої ремонтоздатності.
elias

3

інше рішення

  1. Додайте шлях до ~/.bashrcвідкриття за допомогою vim$ vim ~/.bashrc

    приклад:

    # add extra paths export PATH=$PATH:~/Scripts

  2. як тільки шлях додано, запустіть:

    $ source ~/.bashrc

  3. Якщо правильно додано, помилок не повинно бути.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.