Сократите команды, которые содержат то же предисловие

Создание псевдонимов для наиболее часто используемых команд хорошо, если Вы знаете то, что управляет, чтобы Вы использовали много. Но иногда та же команда используется несколько раз подряд с различными аргументами. Например:

git fetch --some-option
git do-something-else
git another-command
# ... lots more of the same

В этом случае было бы хорошо отбросить git каждый раз. В некоторых случаях это могут быть несколько аргументов, с которых должна запуститься команда (например. sudo apt ...).

Какое программное обеспечение может сделать это?


Примечание: Я видел проект как это отклоняющееся на GitHub давным-давно, но больше не могу находить его. Естественно было бы хорошо, если кто-то помнит то, о чем я думаю, но что-либо, что соответствует описанию (или осуществимая альтернатива) является приемлемым ответом.

1
задан 10 January 2017 в 19:25

2 ответа

При использовании удара - можно сделать следующую функцию

myprefix() { echo -n "> $1 "; while read -r line; do $1 $line; echo -n "> $1 "; done }

Затем, когда у Вас есть набор git команды, можно выйти

myprefix git

И нажать ctrl-c для восстановления.

1
ответ дан 7 December 2019 в 13:38

На Вашем псевдониме начиная с его синтаксиса оболочки Вы свободны получить доступ к параметрам командной строки с помощью $1$ 2$ 3 для шайбы parm1 parm2 parm3

alias gitdo="git do-something-else $1"    
alias gitand="git another-command $1 $2 "

, просто помещает эти определения псевдонима в ~/.bashrc файл... использование затем было бы

gitdo my-parm1

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

git foo bar blah

затем позже в том же терминале, я могу задержать ту команду или путем простого использования клавиши со стрелкой вверх или путем выполнения поиска командной строки

ctrl-r foo [enter]

, который будет retrive выше для разрешения редактирования и переиздания (ctrl-e для перехода к концу строки, переходов ctrl-a к началу строки или ctrl стрелки, покинутой правильные слова переходов)

git woo bar blah

, другой поисковый прием был бы

history | grep foo
1
ответ дан 7 December 2019 в 13:38

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

Похожие вопросы: