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

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

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

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.

  • Как удалить файлы с помощью ~?
  • Использовать случай предоставления файлового API для терминала / консоли
  • В чем разница между двоичным файлом и файлом .exe?
  • объединение нескольких файлов fastq
  • Лучший способ только перечислить файлы, которыми я владею
  • Как извлечь определенное значение из файла журнала и перенести его в другой файл
  • Как скопировать использование для цикла?
  • Должен ли я ставить старые проекты в tarballs
  • Поиск файлов внутри нескольких подкаталогов и zip-каталогов
  • Открытие файлов с сервера Ubuntu поверх ssh с терминала Mac
  • Что-то вроде символически связанного файла, но с привязанными данными изменения?
  • Interesting Posts

    GPL Альтернатива номачине, которая не является FreeNX

    Как определить, является ли параметр ядра допустимым параметром ядра?

    Можно ли изменить команду для `cd`, чтобы отображать только каталоги и игнорировать файлы?

    Причина для кэширования ksh -eq

    Немедленно отправьте задание на печать без очереди, а также увеличьте производительность печати

    Как начать процесс при сохранении переднего плана, это pid в файл?

    Что такое и ? И почему они постоянно находятся на iotop?

    модификаторы даты

    sudo -E не может вызывать некоторые команды, расположенные в домашнем каталоге?

    Откат субблока btrfs с дочерними субволиями

    Пользовательский путь поиска пусковой установки в Ubuntu

    Ограничить вход SSH в локальную сеть: подключение VPN не разрешено

    Как я могу получить уведомление обо всем, что происходит в определенном канале в irssi?

    Синхронизировать каталог с другим каталогом

    Чёрный звук с flashpayer

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