Терминал. Вопрос по команде history

Программы для конфигурации и управления операционной системой
Правила форума
Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа.

Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Терминал. Вопрос по команде history

Сообщение sana-555 » 01 сен 2017, 13:03

Есть замечательная команда history. После ввода которой я вижу все вводимые мной команды под уникальными номерами. И если я ввиду номер команды, то она исполнится: к примеру !123. А есть ли такая возможность, чтобы эта команда не исполнялась сразу, а просто подставлялась в терминал, чтобы ее можно было откорректировать а потом вручную исполнить, нажав enter?
Еще, где находится сам исполняемый скрипт команды history? История введенных команд хранится в .bash_history, а сам скрипт? Мне нужно это для того, чтобы сделать свой скрипт с часто используемыми командами, на вроде history. Только там будет фиксированный список команд, который я смогу в любой момент откорректировать, или добавить новые.
Последний раз редактировалось пользователем 1 Dja; всего редактировалось раз: 23
Причина: подправил название

Аватара пользователя

darkfenix
Сообщения: 636
Зарегистрирован: 27 июн 2017, 10:36
Решено: 9
Благодарил (а): 40 раз
Поблагодарили: 103 раза

Вопрос по команде history

Сообщение darkfenix » 01 сен 2017, 14:02

sana-555 писал(а): Еще, где находится сам исполняемый скрипт команды history
Нигде. У каждой команды свой исполняемый файл.

Аватара пользователя

darkfenix
Сообщения: 636
Зарегистрирован: 27 июн 2017, 10:36
Решено: 9
Благодарил (а): 40 раз
Поблагодарили: 103 раза

Вопрос по команде history

Сообщение darkfenix » 01 сен 2017, 14:03

Или тебе нужен именно history?


Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Вопрос по команде history

Сообщение sana-555 » 01 сен 2017, 14:23

Да, именно он..)

Аватара пользователя

Chocobo
Сообщения: 5570
Зарегистрирован: 27 авг 2016, 19:57
Решено: 130
Откуда: НН
Благодарил (а): 411 раз
Поблагодарили: 1448 раз

Вопрос по команде history

Сообщение Chocobo » 01 сен 2017, 14:34

sana-555, это встроенный функционал bash, оно не упраляется бинарными файлами, фактически.
Да и сама конфигурация состоит из нескольких переменных окружения, на путь к файлу хистори, его длину, формат.

Могу посоветовать подружиться с Ctrl+R - этот хоткей по мере товего ввода найдет наиболее подходящую комманду и подставит в текущий ввод, где сможешь переписать


Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Вопрос по команде history

Сообщение sana-555 » 01 сен 2017, 14:55

Chocobo писал(а): с Ctrl+R - этот хоткей по мере товего ввода найдет наиболее подходящую комманду
Знаю о таком, slant говорил. Но я понял что он ищет из .bash_history, а мне хочется чтобы он искал из моего файла с командами.

Аватара пользователя

Dja
Сообщения: 2795
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 393 раза
Поблагодарили: 284 раза

Вопрос по команде history

Сообщение Dja » 20 сен 2017, 13:08

sana-555, для часто используемых выражений можешь использовать алиасы.
dja-work ~ $ cat ~/.bashrc
******************************************************
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
alias PCS="cd ~/PCs/"
alias вирт="cd /media/hardD/dja/VirtualShare/"
alias мыло="cd ~/Clouds/MailRu/"
alias яру="cd ~/Clouds/YaDisk/"
alias шуттер="cd ~/Clouds/YaDisk/Screens/Shutter/"
alias скрот="cd ~/Clouds/YaDisk/Screens/Scrot/"
alias манс="cd ~/Clouds/YaDisk/docs/documents/mans/"
alias медиа="cd /media/"
alias темп="cd ~/Clouds/YaDisk/temp"
alias сумо="sudo umount"
alias умо="sudo mount"
alias хард="cd /media/hardD/"
alias фе="screenfetch"
alias скрипт="cd ~/.scripts/"
alias тайл="tail -f /var/log/mail.log"
alias впн="cd /etc/openvpn/"
*************************************************
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

BadBird
Сообщения: 1339
Зарегистрирован: 09 сен 2016, 18:08
Решено: 2
Благодарил (а): 63 раза
Поблагодарили: 116 раз

Вопрос по команде history

Сообщение BadBird » 20 сен 2017, 13:16

Советую терминатор использовать.
Есть в нем возможность сохранить закладки часто используемых команд....
Всё о тайлинге окон...ну, или почти всё: Тыц!!!

Аватара пользователя

Bill Williamson
Сообщения: 464
Зарегистрирован: 31 авг 2016, 10:38
Решено: 19
Благодарил (а): 173 раза
Поблагодарили: 97 раз

Вопрос по команде history

Сообщение Bill Williamson » 20 сен 2017, 14:13

Если правильно понял вопрос, zsh с его программируемым автодополнением то, что нужно.
Последний раз редактировалось пользователем 1 Bill Williamson; всего редактировалось раз: 20


Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Вопрос по команде history

Сообщение sana-555 » 20 сен 2017, 14:16

Dja писал(а): можешь использовать алиасы
Да прикольно, вот еще бы не сразу выполнялись команды а просто подставлялись в терминал, для возможной редакции, было бы вообще супер..) Ну если не понятно сказал то: к примеру есть команда по добавлению юзера, ведь каждый раз нужно вводить новое имя, а алиес как я понял сразу исполняет команду, без возможности редактировать. Конечно командой alias, можно вывести список и скопировать мышкой, ну, но, да ладно и так сойдет...)
BadBird писал(а): терминатор
Это я так понял расширение терминала? Там тоже нет возможности подставлять команды для редактирования?

п.с. Кстати, пересел на линукс уже как 3 недели... :smile: Пока полет нормальный, были не большие проблемы, но как то почти на лету их решал, даже без помощи гугля... :joke:

Аватара пользователя

BadBird
Сообщения: 1339
Зарегистрирован: 09 сен 2016, 18:08
Решено: 2
Благодарил (а): 63 раза
Поблагодарили: 116 раз

Вопрос по команде history

Сообщение BadBird » 20 сен 2017, 14:19

sana-555 писал(а): Это я так понял расширение терминала?
Нет, это полноценный терминал которым пользуюсь лично сам.
sudo apt-get install terminator
sana-555 писал(а): Там тоже нет возможности подставлять команды для редактирования?
Это как это?
Всё о тайлинге окон...ну, или почти всё: Тыц!!!


Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Вопрос по команде history

Сообщение sana-555 » 20 сен 2017, 14:27

BadBird писал(а): Это как это?
Вот как всегда не могу переключиться и посмотреть со стороны, как будет выглядеть мое объяснение...)
Хорошо, постараюсь объяснить буквально, если я делаю все руками: допустим копирую команду по установке терминатора и вставляю ее в терминал, и пока я не нажму enter - команда не исполнится. Я могу ее отредактировать и прочая, а могу и вовсе удалить и закрыть терминал...) Так вот, предложенный выше алиес при вводе этого самого алиеса, команда под ним сразу исполняется, без возможности скорректировать эту самую команду. Понятное дело, что есть команды так как они есть, но и есть команды которые можно и нужно редактировать, к примеру выше описанная мной добавление юзера, или пароля...

Аватара пользователя

BadBird
Сообщения: 1339
Зарегистрирован: 09 сен 2016, 18:08
Решено: 2
Благодарил (а): 63 раза
Поблагодарили: 116 раз

Вопрос по команде history

Сообщение BadBird » 20 сен 2017, 14:38

sana-555, понятия не имею, дает ли данный терминал редактировать команды, у меня в закладках уже сформированные команды и мне этого вполне хватает, НО дело в том что и двух минут не надо тебе что бы узнать об этом и в случай чего удалить терминатор....
Всё о тайлинге окон...ну, или почти всё: Тыц!!!

Аватара пользователя

Dja
Сообщения: 2795
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 393 раза
Поблагодарили: 284 раза

Вопрос по команде history

Сообщение Dja » 21 сен 2017, 11:49

sana-555 писал(а): как я понял сразу исполняет команду, без возможности редактировать
сумо ~/PCs/250/public - отмонтирование указанной папки
сумо ~/PCs/250/distrib
в алиасах лишь сумо, которое равно sudo umount
и тд.
пример
17-09-21-004.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Bill Williamson
Сообщения: 464
Зарегистрирован: 31 авг 2016, 10:38
Решено: 19
Благодарил (а): 173 раза
Поблагодарили: 97 раз

Вопрос по команде history

Сообщение Bill Williamson » 21 сен 2017, 12:39

Bill Williamson писал(а): Если правильно понял вопрос, zsh с его программируемым автодополнением то, что нужно.
Дополню свой ответ. Можно поставить zsh и на него плагин zaw, который выполняет инкрементный поиск по истории, выдавая результаты списком. Из этого списка можно выбрать нужное и комбинацией Alt+Enter вывести на поле ввода для дальнейшего редактирования.
https://www.youtube.com/watch?v=0vWtQ8_kYzk

Аватара пользователя

Dja
Сообщения: 2795
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 393 раза
Поблагодарили: 284 раза

Вопрос по команде history

Сообщение Dja » 21 сен 2017, 12:45

Bill Williamson, а в фильтр как попадает?
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Bill Williamson
Сообщения: 464
Зарегистрирован: 31 авг 2016, 10:38
Решено: 19
Благодарил (а): 173 раза
Поблагодарили: 97 раз

Вопрос по команде history

Сообщение Bill Williamson » 21 сен 2017, 12:48

Dja писал(а): а в фильтр как попадает?
Из истории zsh.

Аватара пользователя

Dja
Сообщения: 2795
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 393 раза
Поблагодарили: 284 раза

Вопрос по команде history

Сообщение Dja » 21 сен 2017, 12:49

Bill Williamson, я это понимаю. Я про сам переход со строки в строку фильтр. Вроде команда никакая не вводится. А фильтр включается.
Новичок? - ознакомься с правилами

В поисках истины :grabli:


Автор темы
sana-555
Сообщения: 205
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 172 раза
Поблагодарили: 3 раза

Вопрос по команде history

Сообщение sana-555 » 21 сен 2017, 12:55

zsh - это альтернативный терминал?
Bill Williamson писал(а): Из истории zsh.
А свой файлик с командами можно подсунуть? А то в истории много мусорных будет...

Аватара пользователя

Bill Williamson
Сообщения: 464
Зарегистрирован: 31 авг 2016, 10:38
Решено: 19
Благодарил (а): 173 раза
Поблагодарили: 97 раз

Вопрос по команде history

Сообщение Bill Williamson » 21 сен 2017, 12:59

Dja, комбинация вызова фильтра прописывается прямо в zaw.zsh, например так:
bindkey '^R' zaw-history
Сам zsh можно быстро настроить через oh-my-zsh. Еще можно запретить дублирование в истории. Все это гуглится на раз-два.

Вернуться в «Системные утилиты»