Tag Archives: shell
Grep — несколько строк до и после вхождения
1 |
git log | grep -A4 -B4 35467 |
http://superuser.com/questions/298123/how-to-grep-and-print-the-next-n-lines-after-the-hit
Проставить версию кэша в файле: тупой способ
Тупой способ при деплое проставить версию кэша всей статике путем замены регуляркой плэйсхолдера на нужное значение (время релиза).
Как написать shell-утилиту на node.js
http://flippinawesome.org/2013/07/29/writing-a-command-line-utility-using-node/
Копирование файлов по ssh в shell
1 |
scp user@host:~/fun.mp4 ~/fun.mp4 |
Скопировать директорию
1 |
scp -r user@host:/home/user/fff ./ |
Оставить оригинальные метаданные по файлам
1 |
scp -rp sourcedirectory user@dest:/path |
Git: автоматически разрулить конфликты в пользу «theirs» для всех файлов
Мне нужно было все конфликты в файлах по определенной маске разрешить в пользу того, что пришло с сервера. Файлов таких, по некоторым причинам, было более 5000, и не все удовлетворяли маске (реально нужно было посмотреть вручную около 20 файлов). Поэтому решил разрулить конфликты в ненужных файлах автоматически. Сначала сохраним пути ко всем файлам, удовлетворяющим маске, …
Перенос файлов по маске в shell
Сбойнул один старый скрипт и написал он много маленьких (2-3 кб) файлов в одну директорию. Посмотрел я, сколько файлов оказалось, командой
1 |
ls -1 | wc -l |
Оказалось файлов таких за миллион. На эти файлы смотрел скрипт демонский, который по ним рассылал почты много. Решил я эти файлы из директории той убрать (чтоб пользователей не расстраивать, а данные сохранить)
1 |
ls *.eml -1 | xargs -I {} mv {} ./fuckup/{} |
…
Автодополнение в shell
Есть такая оболочка, Fish-shell (Fish’s fish) — http://ridiculousfish.com/shell/. Репозиторий — https://github.com/fish-shell/fish-shell/#building, установка под MacOs через homebrew — https://github.com/edc/homebrew-fishfish В конце установки надо (может привести к проблемам, о которых ниже)
1 2 3 4 |
sudo su chsh -s /usr/local/bin/fish <имя пользователя> # только для MacOS nano /etc/shells # и добавить строку /usr/local/bin/fish |
Если в MacOS есть проблемы, значит, забыли добавить строчку в /etc/shells и не запускается терминал (говорит, что нет такой оболочки), то нужно перейти в Настройки→Пользователи …
Запуск команды от имени другого пользователя в shell
1 |
sudo su [username] [whatever] |
Проверка dns-записей домена из командной строки
1 |
dig 3dnews.ru ANY |
Выводит все dns-записи, относящиеся к домену. Возились с spf-записями для валидации писем — нужный заголовок выглядит примерно так:
1 |
3dnews.ru. 674 IN TXT "v=spf1 a:3dnews.ru mx ~all" |