Как избежать ./ при выполнении скрипта оболочки?

Как избежать ./ при выполнении скрипта оболочки?

Раньше я знал способ запускать свои скрипты оболочки, просто вводя их имя, пока они были в моей домашней папке или на рабочем столе. Ненавижу вводить ./myscript.sh. Я хотел бы иметь возможность вводить только myscript.sh. Как мне исправить мой терминал, чтобы он делал это?

Я использую GNOME Terminal и Ubuntu 9.04.

решение1

Плохая идея добавлять текущий каталог в свой путь. Переместите скрипты, которые вы хотите часто запускать, ~/binа затем добавьте их ~/binв свой путь.

Для этого добавьте:

export PATH=$PATH:~/bin

к ~/.bash_profile.

решение2

Вы можете добавить . к пути, но, как говорит MikeyB, это плохая идея.

Причина, по которой это опасно, заключается в том, что если в текущем каталоге существует вредоносная программа с тем же именем, что и исполняемый файл, который вы запускаете, то вместо нее будет запущена именно она.

решение3

Я поместил свои скрипты оболочки в /usr/local/bin, похоже, это лучшее место для них? Обычно оно пустое. Сделайте их исполняемыми и забудьте о расширении .sh, и вы можете просто вызывать их.

Это на сервере Ubuntu.

решение4

Чтобы ответить на заданный вопрос, добавьте в путь свой домашний каталог и рабочий стол.

Связанный контент