Как запустить bash-скрипт как команду? - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть скрипт bash, который я хотел бы запустить глобально в качестве команды.Для этого я переместил скрипт в /usr/local/bin/somefile.sh.

Теперь мне все еще нужно вызвать команду под названием somefile.sh.Я хотел бы иметь псевдоним для этой команды (например, я просто хотел бы вызвать скрипт с командой sf).

Как мне это сделать?

Ответы [ 4 ]

0 голосов
/ 25 февраля 2019

Если вы работаете в системе GNU, вы можете использовать систему «альтернатив»:

dir=/usr/local/bin
sudo update-alternatives --install $dir/sf somefile $dir/somefile.sh 10

Это создаст 2 символические ссылки:

/usr/local/bin/sf -> /etc/alternatives/somefile
/etc/alternatives/somefile -> /usr/local/bin/somefile.sh
0 голосов
/ 25 февраля 2019

И для дополнения ответа от @Kent:

alias sf='/usr/local/bin/somefile.sh' с использованием псевдонима

ln -s somefile.sh /usr/local/bin/sf с использованием мягкой ссылки

mv /usr/local/bin/somefile.sh /usr/local/bin/sf с использованием переименования

0 голосов
/ 25 февраля 2019

Откройте файл .bashrc, расположенный в ~/.bashrc.Файл .bashrc читается при каждом входе в систему.Добавьте строку ниже в конец файла.

alias sf='/usr/local/bin/somefile.sh'

, затем войдите в систему или выполните source .bashrc

0 голосов
/ 25 февраля 2019

Существуют разные способы:

  • , как вы упомянули, используйте alias, man alias для подробностей
  • создать мягкую ссылку с именем sf на ваш реальный сценарий
  • переименуйте ваш скрипт
...