Рассмотрим упаковку подраздела (subvolume) BTRFS в сжатый файл-образ.
Рубрика: Скрипты
Как быстро скачать видео с GetCourse на Linux скриптом
Написал простой скрипт для скачивания видео с GetCourse без перекодирования: https://github.com/mikhailnov/getcourse-video-downloader
Некоторые инструкции в интернете предлагают скачивать видео с GetCourse с помощью VLC, однако это требует перекодирования видео.
Этот скрипт скачивает видео-уроки с Геткурса без перекодирования. Работает на Linux, BSD, macOS и в др. UNIX-подобных окружениях.
Читать далее Как быстро скачать видео с GetCourse на Linux скриптом
Автоматизация GDB с помощью xdotool
Понадобилось в отладчике gdb очень много раз повторить одинаковое действие, чтобы поймать значения переменных, которые были в момент сегфолта.
Открыл 2 терминала, в одном запустил программу под gdb, поставил точку остановки (breakpoint), запустил (run), другой средствами оконного менеджера закрепил поверх других окон, запустив в нем:
sleep 5; while true ; do xdotool type c && for type in A B ; do xdotool key KP_Enter && xdotool key p && xdotool key space && for i in $type E V R ; do xdotool type $i ; done; done && xdotool key KP_Enter ; sleep 0; if ! ps aux | grep -vE 'gdb|grep' | grep -q '/usr/bin/python3 /usr/bin/livecd-creator' ; then break ; fi; done
Этот код вводит нужные команды в gdb и проверяет, не остановился ли процесс, т.е. не произошел ли сегфолт, а если произошел, то перестает их вводить. Пошел по своим делам, оно само отработало, вернулся, передо мной был наглядный результат.
Как на коленке записывать, сколько памяти занято и чем в Linux
Понадобилось раз в N минут записывать, сколько памяти занято и чем.
Читать далее Как на коленке записывать, сколько памяти занято и чем в Linux
Скачиваем альбом или все треки исполнителя с Яндекс Музыки бесплатно
Программа youtube-dl умеет скачивать в т.ч. и с Яндекс.Музыки.
Читать далее Скачиваем альбом или все треки исполнителя с Яндекс Музыки бесплатно
Распаковка AppImage
AppImage-ы, собранные свежими версиями AppImage Kit, можно легко распаковать, например, для правки файлов перевода. Рассмотрим на примере ночных сборок Kdenlive 19.04.
Сначала создаем отдельную папку, в которую будем распаковывать AppImage. Я обычно для таких целей использую ~/.local/lib/ (по умолчанию такой директории нет, я ее придумал сам).
И так, создадим папку и переведем терминал в нее:
mkdir -p ~/.local/lib/kdenlive/ cd ~/.local/lib/kdenlive/
Как в Linux/BSD распараллелить скачивание файлов по списку
Дано: есть список ссылок для скачивания в текстовом файле, по ссылке на строку, файл называется input.txt
.
Задача: скачивать по N файлов одновременно, то есть скачивать список в N потоков.
Не путать с множеством потоков скачивания одного файла. Здесь мы качаем N файлов одновременно, и каждый файл качается в один поток.
Делается так:
parallel -a <(cat "input.txt") -P 16 wget "{1}"
Предварительно установить wget
и parallel
.
Пример с реализацией в скрипте скачивания аудио-книг с сайта "Книга в ухе" (knigavuhe.com):
https://gitlab.com/mikhailnov/kvigavuhe-download/blob/master/download.sh#L43
UPD. Дополнение от Романа Кудоярова:
"Можно xargs заюзать. И не ставить parallel
< input.txt | xargs -n 1 -P 16 -I {} wget {}
"
Автоматически обрезать поля в PDF
Понадобилось в PDF на всех страницах автоматически убрать поля, т.к. большие поля мешают чтению PDF на и так маленьком экране электронной книги.
Читать далее Автоматически обрезать поля в PDF
Автоматизация пересборки зависимых пакетов при обновлении библиотек в Росе
(Эта статья будет дописываться) Как составить список пакетов для пересборки, смотрите статью №698. Нужно сделать текстовый файл с построчным списком пакетов. Предположим, что этот файл называется krb5.list
.
Читать далее Автоматизация пересборки зависимых пакетов при обновлении библиотек в Росе
Автоматическое обновление Ubuntu
UPD: приведенный ниже скрипт превратился в целую систему автообновлений с блокировкой выключения во время обновления: system-autoupdate
Замучился постоянно устанавливать обновления на сервер с Ubuntu, unnatended-upgrades не хочу конфигурировать, да и делает он не совсем то, что нужно, поэтому сделал автообновление системы скриптом. Его код ниже. Что делает скрипт, прописано в коде комментариями.
Читать далее Автоматическое обновление Ubuntu