Сделать исполняемый файл видимым для bash

У меня есть исполняемый файл: /opt/Eclipse/eclipse. Я хотел бы запустить его с любого пути с консоли терминала. По этой причине я создаю символическую ссылку:

ln -s /opt/Eclipse/eclipse /usr/bin/eclipse

Но это не помогло запустить eclipse, просто купите ввод ./eclipse из любого места в окне терминала. Система не находит исполняемый файл. Я ожидал, что эта система найдет ссылку eclipse в /usr/bin. Где ошибка в моем мышлении?

0
задан 4 January 2018 в 20:22

6 ответов

Простое альтернативное решение с файлом .bashrc

Вместо создания символической ссылки вы можете просто добавить псевдоним в свой файл .bashrc ... Для этого вы можете начать, добавив alias eclipse='/file/pathway/to/executable' в нижней части вашего .bashrc файла. Затем вы можете проверить это, выполнив source .bashrc и eclipse ...

0
ответ дан 17 July 2018 в 23:51

Зачем даже связывать это? Вы можете просто добавить /opt/Eclipse к своему PATH. В ~/.bashrc:

PATH="/opt/Eclipse:$PATH"

, а затем

source ~/.bashrc

, вы должны просто запустить

eclipse
2
ответ дан 17 July 2018 в 23:51

Это действительно может быть немного удивителен с первого взгляда. bash (и другие оболочки) поддерживает хэш для быстрого поиска двоичных файлов в $PATH, когда пользователь выдает команду. Альтернативой было бы сканирование всех этих каталогов каждый раз, когда выдается команда, чтобы выяснить, что подразумевается. И это дорого.

При определенных обстоятельствах, что hash не обновляется должным образом. Читайте здесь и здесь (раздел hash) для точных подробностей.

Кажется, вы заметили такой редкий случай, когда фактическое содержимое каталога и значения в этом хэше не синхронизированы. Простой

hash -r

сообщает bash перестроить свой хеш. Это нужно сделать только один раз, если вы хотите открыть окно текущего терминала. Если вы закрываете и снова открываете окно терминала, это не нужно.

0
ответ дан 17 July 2018 в 23:51

Простое альтернативное решение с файлом .bashrc

Вместо создания символической ссылки вы можете просто добавить псевдоним в свой файл .bashrc ... Для этого вы можете начать, добавив alias eclipse='/file/pathway/to/executable' в нижней части вашего .bashrc файла. Затем вы можете проверить это, выполнив source .bashrc и eclipse ...

0
ответ дан 24 July 2018 в 17:07

Зачем даже связывать это? Вы можете просто добавить /opt/Eclipse к своему PATH. В ~/.bashrc:

PATH="/opt/Eclipse:$PATH"

, а затем

source ~/.bashrc

, вы должны просто запустить

eclipse
2
ответ дан 24 July 2018 в 17:07

Это действительно может быть немного удивителен с первого взгляда. bash (и другие оболочки) поддерживает хэш для быстрого поиска двоичных файлов в $PATH, когда пользователь выдает команду. Альтернативой было бы сканирование всех этих каталогов каждый раз, когда выдается команда, чтобы выяснить, что подразумевается. И это дорого.

При определенных обстоятельствах, что hash не обновляется должным образом. Читайте здесь и здесь (раздел hash) для точных подробностей.

Кажется, вы заметили такой редкий случай, когда фактическое содержимое каталога и значения в этом хэше не синхронизированы. Простой

hash -r

сообщает bash перестроить свой хеш. Это нужно сделать только один раз, если вы хотите открыть окно текущего терминала. Если вы закрываете и снова открываете окно терминала, это не нужно.

0
ответ дан 24 July 2018 в 17:07

Другие вопросы по тегам:

Похожие вопросы: