Несколько команд Alias в Linux
Я управляю сайтом используя git
, Одно из требований к git repository
в том, что bare = true
, Он использует хук post-receive для управления посылками с моего локального компьютера. Проблема в том, что иногда я хотел бы внести изменения в каталог WordPress на моем веб-сайте, используя просмотр wp-admin онлайн. Так что тогда я бы просто ssh
в каталог и запустить git --work-tree="BLAH" add .
а также git --work-tree="BLAH" commit -m "BLAH"
, Есть ли способ создать псевдоним, как alias git="git --work-tree=\"BLAH\""
и иметь эту работу для всех git
команды?
3 ответа
Если кому-то интересно, как я это решил (благодаря комментарию шелтертера), я написал скрипт bash, а затем попросил пользователя ввести:
#!/bin/bash
function fix {
git --work-tree="PATH_TO_WORKING_TREE" $1
}
echo -n "git "
read -e INPUT
until [ "$INPUT" = "quit" ]; do
fix $INPUT
echo -n "git "
read -e INPUT
done
Запуск это:
user@server [repo.git] $ git-fix
git status
# On branch master
nothing to commit (working directory clean)
git quit
Есть времена, когда alias
отличный инструмент. Тогда бывают ситуации, когда вещи становятся слишком сложными, когда сценарий оболочки лучше.
Чтобы создать одну команду, которая выполняет другие команды, просто создайте файл (возможно, вызовите его git-add-all
) затем введите следующее:
#! /bin/bash
git --work-tree="BLAH" add .
git --work-tree="BLAH" commit -m "BLAH"
Затем вы можете запустить скрипт, просто выполнив:
bash git-add-all
Еще лучше, сделайте скрипт исполняемым:
chmod +x git-add-all
Тогда вы можете использовать его как любую команду:
./git-add-all
Расширенные советы:
Чтобы иметь возможность запустить скрипт из любого каталога git, вы можете скопировать / переместить файл в один из каталогов вашего $PATH
, Например /usr/loca/bin
, Тогда вы можете просто запустить git-add-all
вместо ./git-add-all
,
Еще лучше создать собственный каталог скриптов и включить его в $PATH
, Я лично пользуюсь ~/bin
, Добавить каталог в $PATH
вам просто нужно добавить следующее в .bashrc
или же .profile
:
export PATH=/home/username/bin:$PATH
или если вы делаете это для пользователя root:
export PATH=/root/bin:$PATH
E сть .bashrc
файл в Linux
, Вы можете редактировать его для создания alias
для ваших любимых и часто используемых команд.
Чтобы создать псевдоним, добавьте псевдоним в ваш файл.bashrc.
gedit ~/.bashrc
Псевдоним должен выглядеть так:
alias al='cmd'
Вы можете прочитать больше об этом здесь.