Хаки в CLI MacOS и Linux
Здесь будут собираться всякие мелкие хаки, которые легко гугляться, но про которые легко забыть.
Просмотр прогресса dd и других программ
Нажмите CTRL-T в окне, в котором запущен dd. Это сгенерирует символ ^T, который передаст сигнал SIGINFO текущему запущенному процессу.
$ sudo dd ...
load: 2.39 cmd: dd 33443 uninterruptible 0.01u 34.23s
2470+0 records in
2469+0 records out
2469000000 bytes transferred in 2142.093936 secs (1152611 bytes/sec)
Alias для часто используемых папок
У меня одни из самых используемых папок - директория с рабочими проектами и директория с личными проектами. Целиком их писать, даже с дотабыванием лень.
$ cat ~/.zshrc_aliases
alias work='cd ~/git/work/'
alias me='cd ~/git/strizhechenko/'
git commit –amend для поля author
Можно поменять автора в коммите, который ещё не был отправлен в централизованный репозиторий.
Актуально если вы мучаетесь с раздвоением личности (рабочая-личная) или просто забыли настроить git на этой машине, но уже закоммитили что-то. Или коммитите с чужой машины.
git commit --amend --author "Your Name <your@email.com>"
git log -p но без контекста
git log кушает параметры от diff, но не совсем такие же, -U 0 для него будет ошибкой. Просто убираем пробел.
git log -U0
Показать конфиг без закомментированных строк
Иногда полезно окинуть взором весь конфиг разом, а не все 1000 строчек с закомментированными примерами.
egrep -v "^\s*\t*\s*#.*$" file.conf
Как вариант можно в работе держать отстрипанный конфиг, а рядом оригинал:
cp -a file.conf file.conf.full
egrep -v "^\s*\t*\s*#.*$" file.conf > file.conf.$$
mv -f file.conf.$$ file.conf