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

Программы для конфигурации и управления операционной системой
Правила форума
Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Версия ОС вместе с разрядностью. Пример: LM 18.1 x64, LM Sarah x32 2. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 3. Какое железо. (достаточно вывод inxi -Fxz в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 4. Суть. Желательно с выводом консоли, логами. 5. Скрин. Просьба указывать 1, 2 и 3 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
Аватара пользователя

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

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

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

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

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

darkfenix
Сообщения: 3919
Зарегистрирован: 27 июн 2017, 10:36
Решено: 44
Откуда: Нижний Тагил
Благодарил (а): 239 раз
Поблагодарили: 720 раз

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

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

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

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

darkfenix
Сообщения: 3919
Зарегистрирован: 27 июн 2017, 10:36
Решено: 44
Откуда: Нижний Тагил
Благодарил (а): 239 раз
Поблагодарили: 720 раз

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Dja
Сообщения: 4988
Зарегистрирован: 27 авг 2016, 17:03
Решено: 17
Откуда: Voskresensk
Благодарил (а): 673 раза
Поблагодарили: 521 раз

Вопрос по команде 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/"
*************************************************


BadBird
Сообщения: 2116
Зарегистрирован: 09 сен 2016, 18:08
Решено: 3
Благодарил (а): 122 раза
Поблагодарили: 280 раз

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

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

Советую терминатор использовать.
Есть в нем возможность сохранить закладки часто используемых команд....
С форума ушел....

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

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

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

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

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

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

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

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

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

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

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


BadBird
Сообщения: 2116
Зарегистрирован: 09 сен 2016, 18:08
Решено: 3
Благодарил (а): 122 раза
Поблагодарили: 280 раз

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

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

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

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

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

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

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

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


BadBird
Сообщения: 2116
Зарегистрирован: 09 сен 2016, 18:08
Решено: 3
Благодарил (а): 122 раза
Поблагодарили: 280 раз

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

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

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

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

Dja
Сообщения: 4988
Зарегистрирован: 27 авг 2016, 17:03
Решено: 17
Откуда: Voskresensk
Благодарил (а): 673 раза
Поблагодарили: 521 раз

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

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

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

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

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

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

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

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

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

Dja
Сообщения: 4988
Зарегистрирован: 27 авг 2016, 17:03
Решено: 17
Откуда: Voskresensk
Благодарил (а): 673 раза
Поблагодарили: 521 раз

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

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

Bill Williamson, а в фильтр как попадает?

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

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

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

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

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

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

Dja
Сообщения: 4988
Зарегистрирован: 27 авг 2016, 17:03
Решено: 17
Откуда: Voskresensk
Благодарил (а): 673 раза
Поблагодарили: 521 раз

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

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

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

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

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

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

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

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

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

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

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

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

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

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