добавление программ в путь

У меня есть набор инструментов, которые хранятся в каталоге / opt. Инструменты организованы следующим образом: /opt/toolname/tool.sh. Мой вопрос в том, как я могу добавить инструменты в папку my / opt к своему пути, поэтому я могу запускать их из любого каталога в терминале.

Мне удалось сделать это с помощью некоторых инструментов, создав символические ссылки в / usr / bin; но с более чем 200 инструментами это очень утомительный способ сделать что-то. Есть лучший способ сделать это?

  • Удаленная папка продолжает возвращаться
  • Греп от конца файла до начала
  • Листинг только файлов в папке и внутри ее подпапок
  • Ограничения файла getrlimit (RLIMIT_NOFILE) не удалось
  • Команда bash force копирует один и тот же файл
  • Linux разделяет отдельные файлы на диске, но видит как один
  • Разделить файл и узнать, сколько файлов было создано
  • Как я могу обмануть процесс, думая, что файл не существует?
  • 4 Solutions collect form web for “добавление программ в путь”

    Единственным правильным способом является создание ссылок в /usr/bin или /usr/local/bin как вы описали. Потому что в этих папках в /opt/toolname обычно есть много других файлов, а не только исполняемых файлов. Я был бы груб. В любом случае, добавление /opt/*/ в $PATH не будет работать.

    Если у вас есть список полных путей к этим двоичным файлам, вы можете генерировать ссылки по сценарию.

    Вы можете добавить папки в свой путь, используя следующую команду:

    export PATH=/path/to/folder:$PATH

    Вы должны включить это в сценарий оболочки, который будет запущен до того, как вы откроете окно терминала (например, .bash_profile в вашей домашней папке).

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

    Есть много способов сделать это:

    1. Сделать символическую ссылку в каталоге /usr/bin (или /usr/local/bin ) sudo cp -s /opt/toolname/tool.sh /usr/bin/[unique_Toolname]
    2. Добавьте /opt/toolname/tool.sh к $PATH export $PATH=$PATH:/opt/toolname/
    3. Комбинируйте выше, но используйте $HOME/.local/share/bin вместо system /usr/bin

    Спасибо всем за отзывы и ваше время. Вы подтвердили, что я подозревал, нет ни одного решения для решения этой проблемы. Я продолжу свой первоначальный маршрут и вручную добавлю символические ссылки сейчас, на этот раз в / user / local / bin.

    Linux и Unix - лучшая ОС в мире.