Создание постоянных исполняемых псевдонимов

У меня установлен MySQL (MAMP, Mac OS X), но нужно называть его полным путем каждый раз, когда я обращаюсь к нему из оболочки. Я создал псевдоним: alias mysql='/Applications/MAMP/Library/Bin/mysql, но это длится до тех пор, пока мой терминал /Bash сеанс.

Каков эффективный способ создания постоянных псевдонимов, которые будут работать с пользователями? (Мне нужно иметь возможность выполнять команды из PHP). Должен ли я настраивать псевдонимы в Bash запуске script (как это делается?) Или лучше отредактировать файл sudoers? (Можно также использовать пример этого.)

Спасибо -

EDIT - на основе ответа:

Я просто попытался создать ~/.bashrc и написал следующее:

alias mysql = '/Applications/MAMP/Library/bin/mysql'

Но это, похоже, не имеет никакого эффекта. Есть ли специальный синтаксис для этого файла?

Ответ 1

Добавьте команду в свой ~/.bashrc файл.

Чтобы сделать его доступным для всех пользователей, добавьте его в /etc/profile.

Ответ 2

  • В разных оболочках используется другой файл точек для хранения псевдонимов.
  • Для mac оболочка bash использует .bash_profile или .profile
  • Для ubuntu оболочка bash использует .bashrc
  • Если вы используете оболочку zsh и плагин ohmyzsh, точный файл .zshrc

Традиционно, чтобы добавить постоянный псевдоним, вам нужно открыть файл точки и написать псевдоним вручную, например:

alias hello="echo helloworld"

И не забудьте указать файл точки, чтобы он вступил в силу. Чтобы создать файл dot на ubuntu bash, введите source .bashrc Чтобы сделать псевдоним доступным для всех пользователей, напишите на /etc/profile вместо точечного файла. Не забудьте ввести source /etc/profile, чтобы новый псевдоним вступил в силу.

Если вам просто нужен временный псевдоним, вам не нужно писать в файл точки. Просто введите ту же команду (alias hello="echo helloworld) на терминал.

Обратите внимание, что временный псевдоним, созданный с помощью команды alias, исчезнет после закрытия оболочки.


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

Если у вас есть рубин, установленный на ubuntu, вы можете создать постоянный псевдоним с помощью одной команды с помощью aka.

gem install aka2

Например:

aka generate hello="echo helloworld" #will generate a alias hello="echo helloworld" 
aka destroy hello #will destroy the alias hello
aka edit hello #will prompt you to edit the alias.

С aka нет необходимости писать в dot файл текстовым редактором. И не нужно также генерировать файл точек.

Ответ 3

Вы идете об этом неправильно.

Либо добавьте /Applications/MAMP/Library/bin/ к вашему пути, либо создайте script для вызова MySQL и поместите его в каталог bin, который уже находится в вашем пути.

Ответ 4

На mac файл .bashrc не получает источников, если вы не поместите

source ~/.bashrc в /etc/profile или /etc/bashrc.

Просто подумал, что я бы сказал об этом.