Tips & tricks — Полезняшки при работе в bash
Бывает, приходится открывать окно терминала и набивать строки на клавиатуре. Например, пытаешься решить проблему, народ на форуме помогает, - какие строчки нужно добавить в такие-то файлы. Что-то удается скопировать и вставить, иное нужно набрать самостоятельно.
Проходит 1 час, второй, и уже решения есть, но нет результата. А спустя время, выясняешь, что где-то букву пропустил, в другом месте пробел не поставил, а иногда целое слово напечатал верно, но не там.
На мой взгляд, такие ситуации возникают чаще всего у человека, который пытается разобраться в одном вопросе, а на него как снежный ком наваливаются пробелы в знаниях из других областей. И одна из таких областей - шелл, то есть shell (в частности bash).
Человек устает постоянной ручной и нудной работы. И пока все удобство командной строки ему недоступно (не буду о причинах) - остается только гадать как это линуксоиды могут любить такое убожество.
Дальше я приведу несколько полезных приемов, которые сам использую постоянно. Все они открытиями не являются, и узнал их либо где-то в инете, либо в документации.
Открываем окно терминала и действуем.
ESC . означает ввести последнее использованное слово. Удобно использовать, когда нужно выполнить команду (ls /foo/bar), а потом захотелось еще и посмотреть файл в каталоге /foo/bar.
^БЫЛО^НУЖНО означает заменить то, что БЫЛО в последней введенной строке на то, что НУЖНО и выполнить новую команду
А еще можно просто ставить коментарии для строки, к которой хочешь вернуться. То есть, допустим, ты набираешь длинную строку, а потом возникает необходимость эту строку запомнить, но не выполнять. Делаем так: нажимаем Ctrl+a (переходим на начало строки), нажимаем # и ENTER. Таким образом строка попала в историю и к ней можно вернуться позже.
!! последняя использованная команда. Удобно, если команду выполнил, но забыл sudo. Делаем sudo !!
Alt+- Alt+u (Зажать "Alt", за ним нажать "-", отпустить кнопки, потом Зажать "Alt", за ним "u") Сделать слово слева от курсора большими буквами. Удобно при выводе значений переменных окружения.
Alt+- Alt-c Сделать слово слева от курсора с большой буквы.
Alt+- Alt-d Удалить слово влево до слеша.
Только нужно помнить, что все эти сочетания клавиш должны добраться до шелла целыми, поэтому если их зохаваит другое приложение (менеджер окон, например) - то шеллу ничего не достанется.
Проходит 1 час, второй, и уже решения есть, но нет результата. А спустя время, выясняешь, что где-то букву пропустил, в другом месте пробел не поставил, а иногда целое слово напечатал верно, но не там.
На мой взгляд, такие ситуации возникают чаще всего у человека, который пытается разобраться в одном вопросе, а на него как снежный ком наваливаются пробелы в знаниях из других областей. И одна из таких областей - шелл, то есть shell (в частности bash).
Человек устает постоянной ручной и нудной работы. И пока все удобство командной строки ему недоступно (не буду о причинах) - остается только гадать как это линуксоиды могут любить такое убожество.
Дальше я приведу несколько полезных приемов, которые сам использую постоянно. Все они открытиями не являются, и узнал их либо где-то в инете, либо в документации.
Открываем окно терминала и действуем.
ESC . означает ввести последнее использованное слово. Удобно использовать, когда нужно выполнить команду (ls /foo/bar), а потом захотелось еще и посмотреть файл в каталоге /foo/bar.
^БЫЛО^НУЖНО означает заменить то, что БЫЛО в последней введенной строке на то, что НУЖНО и выполнить новую команду
А еще можно просто ставить коментарии для строки, к которой хочешь вернуться. То есть, допустим, ты набираешь длинную строку, а потом возникает необходимость эту строку запомнить, но не выполнять. Делаем так: нажимаем Ctrl+a (переходим на начало строки), нажимаем # и ENTER. Таким образом строка попала в историю и к ней можно вернуться позже.
!! последняя использованная команда. Удобно, если команду выполнил, но забыл sudo. Делаем sudo !!
Alt+- Alt+u (Зажать "Alt", за ним нажать "-", отпустить кнопки, потом Зажать "Alt", за ним "u") Сделать слово слева от курсора большими буквами. Удобно при выводе значений переменных окружения.
Alt+- Alt-c Сделать слово слева от курсора с большой буквы.
Alt+- Alt-d Удалить слово влево до слеша.
Только нужно помнить, что все эти сочетания клавиш должны добраться до шелла целыми, поэтому если их зохаваит другое приложение (менеджер окон, например) - то шеллу ничего не достанется.