[1]По мотивам http://www.shell-fu.org/ [2] . Советую посетить этот очень полезный сайт по шеловским уловкам, подсказкам и сокращениям. А «для затравки» — несколько «зацепивших» меня вещей:
- Избавьтесь от повторения внутри команды. Вот, например, надо зарезервировать файл
/usr/src/linux/arch/i385/boot/bzImage
в
/usr/src/linux/arch/i385/boot/bzImage.old
(пример довольно-таки «учебный»). Даже с учётом автодополнения по Tab набор команды
cp /usr/src/linux/arch/i385/boot/bzImage /usr/src/linux/arch/i385/boot/bzImage.old
— достаточно нуден. Куда проще написать
cp /usr/src/linux/arch/i385/boot/bzImage{,.old}. Соответственно, для возврата —
cp /usr/src/linux/arch/i385/boot/bzImage{.old,} - Избавьтесь от повторения в цепочке команд. В набираемой команде можно использовать аргументы предыдущей: вместо первого просто написать
!:1
, вместо второго —
!:2
, вместо последнего —
!:$
. А можно и «одним махом»:
!*
— сразу все. Обычно так и пишут не заморачиваясь, особенное, если аргумент всего один:
!*
ведь проще набрать, чем
!:1
- И ещё о повторах. Когда нужно несколько раз «прогрепить» несколько раз один файл по разным ключевым словам, имеет смысл писать команду
grep
«наоборот»: — тогда нажав стрелку вверх, можно сразу править ключевое слово.
- Забытое sudo. Если набрали команду, а она «ругнулась» на права и вы вспомнили, что надо её выполнить через sudo, достаточно набрать
sudo !!
— команда подставится сама.
- Несколько команд в одну строку. Можно написать несколко команд в одну строку. Причём, если разделить их && — следующая будет выполняться только в случае успешного завершения предыдущей. А если разделить ; — в любом случае.
- Несколько вложенных каталогов. Для создания нескольких вложенных каталогов вовсе необязательно писать
mkdir asd ; mkdir asd/ghjk ; mkdir asd/ghjk/qwer
. Можно сразу написать
mkdir -p asd/ghjk/qwer
- Замечательные клавиши.
Ctrl-U
— вырезает (в «буфер обмена») всё от курсора до начала строки,
Ctrl-W
— вырезает (в «буфер обмена») одно слово влево,
Ctrl-Y
— вставляет из «буфера обмена»,
Ctrl-A
— перейти в начало строки,
Ctrl-E
— перейти в конец строки. «Буфер обмена» — свой собственный, ни с буфером обмена X, ни, тем более, с Windows через SSH ничего общего не имеет.
- Генератор паролей в одну строку. Команда </dev/urandom tr -dc A-Za-z0-9_ | head -c8 ; echo создаст вполне надёжный пароль из 8 символов.
Пожалуй, на сегодня хватит.