Статья описывает актуальный способ работы с гугл диском из командной строки (Linux), а также добавление ежедневной задачи для бэкапа и синхронизации локальных файлов с удалёнными директориями.
Метка / Linux
Бенчмарки быстро
Как быстро сравнить время работы разных команд: использовать пакет hyperfine.
Страница проекта содержит полезные примеры, здесь парочка тех, что я использовал для запуска тестов различных команд (бенчмарканья? бенчмаркинга?).
Удалить ненужные файлы и освободить место на диске (Linux)
Собрал в одном месте все команды, которые обычно запускаю, чтобы очистить место под большие файлы.
В этот раз я перепрошивал свою портативку (Anbernic RG351p), и мне нужно было срочно найти 50ГБ свободного места (нашёл).
Linux: скрипты и настройки
Чтобы поделиться с коллегами, я почистил и обновил свой приватный репозиторий со скриптами и различными конфигами, что собирал какое-то время, и выложил его на гитхаб под названием dev-scritps.
dev-scritps (Linux) — это набор полезных настроек для профиля пользователя, терминала, vim, git. Репо также содержит набор общих скриптов, команд и хоткеев.
Это не абсолютно исчёрпывающий туториал по конфигурации Всего, но настройки, которые я применяю при каждой новой установке Linux. Горячие клавиши (и в vim тоже), которые я нажимаю каждый день; скрипты, которые я писал для разных проектов так много раз, что в конце-концов они превратились в общие, и осели в этом репозитории.
Курс по функциональному программированию от ИТМО
Замечательный курс по функциональному программированию от Университета ИТМО доставляет острых ощущений: лекции интересные и сложные, как и задания для самостоятельного решения.
Курс обозревает концепции функционального программирования: рекурсию, функции высшего порядка, свёртку и отображение последовательностей, ленивые вычисления, метапрограммирование (макросы) и остальное — всё на Common Lisp
, одном из популярных диалектов семейства Lisp
.
Терминал и его команды
Подборка сниппетов для bash, которые используются слишком редко, потому не сохраняются в истории и вылетают из головы, но при этом бывают полезными.
Процессы
Убить все процессы с заданным именем
1 | for p in $(ps aux | grep -i httpd.worker | cut -d " " -f 4,5) ; do kill $p ;done |
Когда не доверяешь pkill.
Узнать родителей процесса
1 | ps -ocommand= -p $p | awk -F/ '{print $NF}' | awk '{print $1}' |
Узнать родителей всех порождённых процессов
1 | for p in $(ps aux | egrep oracle | cut -d ' ' -f 4); do ps -ocommand= -p $p | awk -F/ '{print $NF}' | awk '{print $1}' ;done | uniq |
Во всех командах параметр -f
для cut
может требовать подбора верного числа.
Вывести процессы, сортированные по потребляемой памяти
1 | ps -eo pmem,pcpu,vsize,pid,cmd | sort -k 1 -nr | head -5; free -m |
Бэкап на Google Диск из командной строки
Актуальная версия статьи: Бэкап на Google Drive из консоли
Для работы со своим гуглдиском из командной строки потребуется установить пакет gdrive. Установка проста и описана на странице проекта, там же примеры работы с утилитой.
Далее полезные команды и скрипт для бэкапа.
Отладка отправки почты на локальном сервере
Для того, чтобы перехватывать почтовую рассылку с локального веб-сервера, понадобится установить пакет mailcatcher
.
MailCatcher — это простой SMTP-сервер, который отображает отправленные на него письма в веб-интерфейсе.
Я настраиваю веб-сервер для PHP
, на официальном сайте описана настройка и под другие платформы.
Python: вставить строку в буфер обмена (Linux)
Данный код копирует строку «Cthulhu fhtagn!» в буфер обмена — это значит, что после запуска скрипта данная строка будет доступна для вставки в любом текстовом поле.
Код будет работать только в рабочих окружениях, которые используют GTK+ (GNOME, Xfce etc.).
Python: загрузка альбомов ВКонтакте
Кратко: описание способа массовой загрузки аудиозаписей из Вконтакте, с сортировкой по альбомам.
Good news, everyone. Вконтакте закрыл свободный доступ к API аудиозаписей, и теперь скрипт не работает.
История
Я слушаю музыку онлайн, для чего использую Вконтакте как музыкальный каталог, в котором можно сохранять и сортировать аудиотреки по альбомам. С помощью специальных плагинов для браузера (использую VK Audiopad), для этого даже не нужно заходить на сайт. Удобно.
Со временем, у меня накопилось больше 65-ти альбомов, в которых находятся свыше 4000 записей.