Несколько команд 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'

Вы можете прочитать больше об этом здесь.

Другие вопросы по тегам