Время от времени было бы полезно добавить команду непосредственно в историю в Bash, фактически не выполняя ее. Пока что закрытая вещь, которую я нашел, это добавление #
перед ним и нажатие клавиши return. Есть ли лучшие способы?
bash
command-history
Grumbel
источник
источник
./resize-images.sh
, в последней строке которого указана команда, которую вы должны выполнить, чтобы отменить изменения, было бы очень полезно, если бы вместо этого сценарий мог добавить команду в мою историю, поэтому я просто нажал,up-enter
если мне нужно отменитьhistory -s
командаВы можете даже связать нажатие клавиши, чтобы сделать это для вас. Вы можете ввести это в командной строке Bash:
или добавьте это к себе
~/.inputrc
:затем вы можете что-то набрать и нажать Ctrl- qи это будет добавлено в историю без выполнения. Пробел перед «историей» приводит к тому, что
history
сама команда не добавляется в историю, если вашаHISTCONTROL
переменная содержитignorespace
илиignoreboth
. Вместо "\ Cq" можно выбрать другое нажатие клавиши.источник
Трудно придумать что-то более короткое, чем «команда» из одного символа, поэтому нам действительно нужно перейти на уровень нажатия клавиш. С моей настройкой bash и американской клавиатурой вы получаете:
#
(нужно SHIFT): +1 инструкция, +2 нажатие клавишиитого 3 инструкции, 5 нажатий клавиш.
Использование ALT#делает то же самое в 1 инструкции, 2 нажатия клавиш.
YMMV в зависимости от вашей раскладки клавиатуры и конфигурации bash.
источник
#command
намного быстрееhistory -s command
, а также очень простое в использовании, если выhistory-search-backward/-forward
правильно наносите карту . Но это вопрос вкуса.