LINUX.ORG.RU

Полезные плюшки

 


11

22

Периодически на хабре проскакивают статьи про различные плюшки для bash. Иногда попадаются очень полезные, иногда просто приятные. Только что открыл для себя, что bash можно научить регистронезависимому автокомплиту:

echo 'set completion-ignore-case on' >> ~/.inputrc
К примеру, теперь cd ~/down без проблем превращается в cd ~/Download. Подумал, что было бы неплохо устроить тред полезных плюшек для bash.

★★★★
  • ^R - поиск по предыдущим командам
  • !! - заменяется на предыдущую команду. Обычно использую как sudo !!
  • M-. (Alt + .) - перебирает последние аргументы предыдущих команд. Удобно например сначала создать каталог, потом в него перейти.
  • ^x ^e - открыть редактор с временным файлом, после чего исполнить код из временного файла. Иногда использую.
Belkrr
()
Ответ на: комментарий от anonymous

Мде, сложно поспорить с претензией.

Insomnium ★★★★
() автор топика
Ответ на: комментарий от kitar

Вы так шутите? :) Да, различие в регистрах символов в названии файлов в подавляющем большинстве случаев встречается в домашней директории пользователя, и стоило бы всегда давать названия тем же директориям, начиная с символа в нижнем регистре, но есть и «странные» команды, - например «VirtualBox». Ну и не писать же алиас на каждую папку в противном случае.

Insomnium ★★★★
() автор топика
Ответ на: комментарий от Insomnium

но есть и «странные» команды, - например «VirtualBox».

Это да.

kitar ★★★★★
()

Только что открыл для себя, что bash можно научить регистронезависимому автокомплиту:

А в zsh из коробки.

gentoo_root ★★★★★
()

трёхзвёздный пассажир открыл для себя консоль, не к добру это, я переживаю

zolden ★★★★★
()
Ответ на: комментарий от gentoo_root

Да, одна из плюшек, из-за которых некогда пробовал zsh. Но у меня, например, он так и не прижился почему-то. Б`ольшую часть его возможностей я не использовал, а в дальнейшем ещё множество раз имел дело с линуксом на разных машинах (в т.ч. даже некогда с разными дистрибутивами на домашней) - bash как-то «изкоробочнее», а потому роднее.

Insomnium ★★★★
() автор топика
Ответ на: комментарий от zolden

В моем случае звезды - не показатель, просто давно зарегистрирован. Слишком часто и слишком много приходится сидеть на оффтопе, а линукс - скорее некогда выработанная привычка и фан «для души». Так что я не «среднестатистический», не переживайте.

Insomnium ★★★★
() автор топика
Ответ на: комментарий от Insomnium

Б`ольшую

Думаю, будет полезно назначить клавишу Compose (у меня на правом Alt). ò можно будет написать простой комбинацией Compose + ` + o (английская). Зажимать клавиши не обязательно - можно по очереди нажимать. Я ей ставлю кавычки « и ».

Dukat863
()
Ответ на: комментарий от Belkrr

^x ^e - открыть редактор с временным файлом, после чего исполнить код из временного файла. Иногда использую.

bash: emacs: command not found...

anonymous
()
Ответ на: комментарий от Dukat863

ò можно будет написать простой комбинацией Compose + ` + o (английская).

Ударение в русском языке ставится в другую сторону: бо́льшую

PS: не слушай их, нажимаешь Ctrl+Shift+u, а дальше 4-значный шестнадцатиричный код символа и Enter, И вуаля, какие хочешь н̀а́д̂с̃т̄р̅о̆ч̇н̈ы̉е̊ з̋н̌а̍к̎и̏. Попробуй попросить товарища с Compose возпроизвести их.

anonymous
()
Ответ на: комментарий от Belkrr

Alt + .

Не знал. Спасибо.

У самого в ~/.bashrc ничего особого. Управление историей:

export HISTCONTROL="ignoreboth:erasedups"
закрытие редактора mc по одному нажатию ESC, а также нормальное оформление окон gnuplot в Octave:
export KEYBOARD_KEY_TIMEOUT_US=1000
export GNUTERM=wxt   # для вывода графиков в octave
нормальный вид быдлоофиса:
alias soffice="OOO_FORCE_DESKTOP=gnome /usr/bin/soffice"
Куча функций и alias'ов для упрощения работы и, естественно, это:
export LC_NUMERIC="C"

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anonymous

export EDITOR=nano в ~/.bashrc Иначе откуда башу знать, что емаксом вы не пользуетесь.

Belkrr
()

А я искал аналог подобной функции из command.com (там это работает, потому что FAT/NTFS не case-sensitive)

ms-dos32
()
Ответ на: комментарий от gentoo_root

Да, это помогло, спасибо. Правда такая же строчка с кириллицей для всяких Документов не заработала. Но тут наверно уже надо понимать магию уникода, хотя zsh с ним раньше и вообще плохо работал вроде.

sin_a ★★★★★
()
Ответ на: комментарий от anonymous

Дело в том, что он слишком большой чтобы помнить всё и 2. Чтобы запомнить всё, нужна постоянная практика по сабжу.

superdarkshvein
()
Ответ на: комментарий от Eddy_Em

alias soffice=«OOO_FORCE_DESKTOP=gnome /usr/bin/soffice»

Но почему не просто export OOO_FORCE_DESKTOP=gnome? Тем более, что не факт, что из менюшек всяких оно вызывается по имени, а не по абсолютному пути.

kss ★★★★★
()
Ответ на: комментарий от anonymous

Глянул этот твой PowerShell. Тот же Bash (даже команды одинаковые), но только для Windows®, и написан на .NET®

Dukat863
()
Ответ на: комментарий от kss

Но почему не просто export OOO_FORCE_DESKTOP=gnome?

А так оно у меня почему-то не работало. Не помню уже.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от kss

Тем более, что не факт, что из менюшек всяких оно вызывается по имени, а не по абсолютному пути.

У меня оно вызывается либо явно командой soffice, либо в mc (с тем же OOO…)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Insomnium

У виртуалбокса есть команды в нижнем регистре (по крайней мере у меня v4.1.14).

А так да - удобнее регистронезависимость.

vahtu
()

Знаю одну офигенную плюшку для bash (удивлен, почему ещё никто не посоветовал):

1. wget -O ~/.zshrc http://git.grml.org/f/grml-etc-core/etc/zsh/zshrc 2. wget -O ~/.zshrc.local http://git.grml.org/f/grml-etc-core/etc/skel/.zshrc 3. установить zsh и сделать chsh на /bin/zsh

Не троллинг, на самом деле - плюшек там просто завались. Я многие так и не запомнил (надо перечитать конфиг), но вот любимые: - C-o s подставляет sudo в начало текущей строки, или в последнюю выполненную комманду, если строка пустая. - отображает текущий брэнч для различных vcs - удобная подстановка типичных труб: |grep, |tail и т.д. - была ещё какая-то горячая клавиша для перехода к началу аргументов в текущей комманде - а ну M-h ещё для просмотра справки (man, info) для текущей введенной комманды, с последующим возвратом к той строке ввода, что была. - дофига ещё всего, огромный конфиг

Ещё есть интересное чтиво zsh-lovers, оформленное в виде man-файла. Там тоже конкретные примеры с zsh.

vyazovoi ★★★
()
Ответ на: комментарий от vyazovoi

[offtop]все время забываю про дурацкий lorcode и расстановку переносов =) Уже лет 5 читаю лор, а писать сюда как-то не приходилось[/offtop]

vyazovoi ★★★
()
Ответ на: комментарий от vyazovoi

Ещё мне нравится удобный автокомплит в zsh: можно так написать: cd /h/u/b и нажать <Tab>, чтобы раскрылось до cd /home/user/bin, например. А ещё варианты авто-комплита в виде меню и с описанием. Вводишь дефис и он тебе предлагает параметры с их описанием.

Наверняка многие из этих возможностей уже появились или и раньше были в bash, но zsh все равно впереди. А конфиг от grml как раз для тех, кому лень писать свой.

vyazovoi ★★★
()
Ответ на: комментарий от anonymous

Нафига нужно это доисторическое говно, когда есть zsh?

/fixed

jessey
()

Счастье-то какое. Спасибо!

gatsu
()
Ответ на: комментарий от Insomnium

а в дальнейшем ещё множество раз имел дело с линуксом на разных машинах (в т.ч. даже некогда с разными дистрибутивами на домашней) - bash как-то «изкоробочнее», а потому роднее.

apt-get install zsh; yum install zsh; pacman, emerge, нутыпонел.

«изкоробочнее», а потому роднее.

ты что, весь софт искаробочный используешь?

lazyklimm ★★★★★
()
Ответ на: комментарий от superdarkshvein

по твоему нику видно. супер темная свинья О_О.

Vekt
()
Ответ на: комментарий от vahtu

Тратить клавишу-модификатор на одну комманду? Неслыханная расточительность =) Лучше уж тогда на Super_L + s, например, повесить. И останется много комбинацией свободно.

vyazovoi ★★★
()

Периодически на хабре проскакивают статьи про различные плюшки для bash.

Лучше бы вместо хабра man bash почитал.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.