%20%D0%B2%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D1%83%D1%8E%20%D1%81%D1%82%D1%80%D0%BE%D0%BA%D1%83%20%D0%B2%20%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%B5%20bash%3F.png)
На самом деле я программирую скрипт, в котором я могу хранить команды в виде шпаргалки (например, «git add .», «git merge», «docker compose-up» ....) - все команды, которые мне нужны в моей повседневной работе.
глянь сюда:https://github.com/m1well/cheatsheet
теперь у меня вопрос: можно ли скопировать команду в командную строку без дополнительных установок?
Моя настоящая идея заключается в том, чтобы реализовать это как историю оболочки -> добавить число перед каждой командой, а затем я хочу вызвать это так,
$ my-script.sh -c 5
где -c
обозначает параметр команды (если уже реализовано несколько параметров), а 5 обозначает команду в строке 5.
TL;DR: возможно ли скопировать строку из файла в командную строку, а затем выполнить ее, нажав Enter?
решение1
Это зависит от ОС. Для Unix/Linuxздесьесть несколько предложений, как засунуть строку в буфер ввода. Windows, конечно, отличается.
Совершенно другой подход, основанный только на bash, заключается в использовании чего-то вроде этого: введите эти команды в командную строку bash:
foo() {
READLINE_LINE="execute me"
READLINE_POINT=${#READLINE_LINE}
}
bind -x '"\ex": foo'
Теперь вы можете ввести Alt+ x( \ex
часть кода), и текущая строка ввода будет заменена на execute me
.