Як запустити власну програму, не вказуючи її шлях


11

Припустимо, я щось склав, і я запускаю це так:

$ /path/to/my/executable/mycmd
Hello World

Що мені потрібно зробити, щоб це запустити

$ mycmd
Hello World 

звідусіль у моєму комп’ютері?

Відповіді:


15

Що ви шукаєте - це PATHзмінна середовище. Він повідомляє оболонці, де потрібно шукати програми. Ви можете побачити поточне значення цієї змінної, використовуючи echo:

echo "$PATH"

Тепер ... Найкраща практика, якщо ви хочете використовувати якусь нову програму, - це встановити її за допомогою програми управління пакетами для вашого розповсюдження. Але в цьому випадку я припускаю, що ви маєте справу з програмою, яка не постачається жодним доступним програмним пакетом. Для таких програм у вас є два варіанти:

  1. Встановіть програму на всій системі в місце, де ваша система не розміщує файли, встановлені з пакетів. У більшості систем такі "безпечні" папки включають /usr/local/bin/і /opt/bin/- вони вже повинні бути у вашій PATH. (Загляньте всередину цих папок, і якщо в них багато файлів, тоді ви не можете розмістити власну програму, і вам доведеться переглянути інші папки, перелічені у вашій програмі PATH.)
  2. Змініть свою PATHзмінну. Це менш безпечно, оскільки він визначає додаткові папки, в яких можна зберігати програми, і хтось може зіграти на вас трюк, поставивши там свою власну програму для запуску.

    Ви можете змінювати PATHзмінну або тимчасово, використовуючи

    export PATH="$PATH:/path/to/your/executable"
    

    (майте на увазі $PATH після = ) або назавжди, додавши до .bashrcфайлу вищезазначений рядок (за умови використання bash).

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