Ответ 1
/usr/local/bin
будет наиболее подходящим местом. Mac OS X имеет значение по умолчанию PATH
Я нахожусь в Mac OS 10.6, и я пытаюсь изучить кое-что о сценариях оболочки. Я понимаю, как сохранить оболочку script и сделать ее исполняемой, но мне интересно, что я могу сделать или где я могу сохранить файл, чтобы сделать его глобальным (то есть доступным независимо от того, в какой папке я нахожусь).
Например, если я сохраню файл .sh в каталоге/Users/username/и сделаю его исполняемым, я могу выполнить только этот script в этом конкретном каталоге. Если я перейду к /Users/username/Downloads, например, я не могу выполнить script.
Также будут полезны любые предложения ресурсов для получения дополнительной информации о сценариях оболочки. Благодаря
/usr/local/bin
будет наиболее подходящим местом. Mac OS X имеет значение по умолчанию PATH
Традиционно такие скрипты либо идут в ~/bin
(то есть: каталог bin в вашем домашнем каталоге), либо /usr/local/bin/
Первое означает, что script будет работать только для вас, последний - для скриптов, которые вы хотите кого-либо на чтобы система могла работать.
Если вы поместите его в ~/bin
, вам может потребоваться добавить его к переменной среды PATH. /usr/local/bin
должен быть уже на пути.
Есть два способа сделать это -
** ПРИМЕЧАНИЕ. Если вы хотите запустить скрипт с сокращенной командой, а не набирать полное имя файла, добавьте следующее в ваш файл .bash_profile: alias myscript='my_script.sh'
Затем вы можете запустить скрипт, просто набрав myscript
. (вы можете использовать любой псевдоним)
При использовании оболочки bash напишите эту функцию script как функцию, а затем поместите ее в .bashrc или source файл, содержащий эту функцию, с помощью "source file_name"
Теперь выполните вызов script по функции в оболочке.
В операционной системе Mac
Это очень просто, если вы знакомы с файлом bashrc! Это будет полностью использовать только ваш файл .bashrc и займет 2 секунды.
(Я использую Arch Linux Manjaro, поэтому я использую .bashrc, расположенный в моем домашнем каталоге)
Код для размещения в вашем файле .bashrc:
# Simple bashrc method to launch anything in terminal from any directory
YOURCOMMAND () {
cd /path/to/directory/containing/your/script/ && ./YOURSCRIPT
}
Как вы можете видеть, сначала вы используете простую команду 'cd' и даете ей каталог расположения скриптов, затем используете '&&', чтобы вы могли выполнить следующую команду сразу после выполнения, и, наконец, открываете свой скрипт так же, как вы это сделали бы. обычно! Супер просто и сохранено прямо в вашем файле .bash! :)
Надеюсь, я кому-то помог!
С уважением,
AnonymousX
Сохраняя его в /usr/bin
(или любой другой каталог, присутствующий в PATH
) или редактируя PATH
, чтобы включить каталог, в который вы его сохранили, в основном сделает его запущенным в любом каталоге.
из рабочего каталога "script.sh" "mv [script.sh]/usr/local/bin" (не тестировалось, но кажется наименее сложным способом IMO.)
Вы должны поместить его в глобальный исполняемый каталог на вашем компьютере. Я думаю, что обычно это будет /usr/bin
в операционных системах на базе Unix (однако для этого чаще всего требуются привилегии суперпользователя на этой машине).
Вы также можете поместить его в любой другой каталог, который находится в переменной среды $PATH
, хотя он будет работать только для тех пользователей, у которых есть этот каталог в этой переменной.
Вы можете найти значение $PATH
, набрав echo $PATH
в оболочке. Каталоги разделяются на :
.