Задача: у нас есть операционная система Linux (Ubuntu, Mint, ROSA, Arch, Debian, …) и папка с фотографиями, в этой папке много подпапок с фотографями, в подпапках могут быть еще подпапки до неограниченного уровня вложенности. В EXIF-данных большинства фотографий записано время их снятия по данным фотокамеры, однако файловый менеджер думает, что файл был создан в другое время, например, когда вы его откуда-то скопировали. Это неудобно, например, нельзя отсортировать фотографии по дате создания не выходя из файлового менедежра. Читать далее Как сделать настоящее время фотографирование временем создания файла на диске?
Метка: bash
Восстановление пакетов на Archlinux/Manjaro
Получение списка установленных пакетов для быстрого восстановления системы с помощью pacman.
Хорошей практикой является сохранение списка всех установленных пакетов. Если ваша система «упала» и её сложно восстановить, pacman может легко переустановить эти пакеты.
Сначала сохраните в список пакеты (доступные в репозитории):
pacman -Qqe | grep -v "$(pacman -Qmq)" > pkglist
Безопасная, но и более сложная альтернатива (во избежание удаления частичных совпадений):
comm -13 <(pacman -Qmq | sort) <(pacman -Qqe | sort) > pkglist
Сохраните этот файл на флэшке или на другом носителе.
Скопируйте файл pkglist в новую систему, перейдите в эту папку. Для восстановления используйте команду:
pacman -S $(cat pkglist)
Хочу заметить, для восстановления программ, установленных из aur, этот метод не работает.
Дополнение от Ивана Архипова
Получение списка пакетов установленных и из AUR:
sudo pacman -Qe > pkglist2
Восстановление:
yaourt -S $(cat pkglist2)
Автор: Олег Плужник
Другие публикации статьи: vk.com/nixscript
Выводим в терминале построчно все синонимы или антонимы к заданному слову в английском языке
Выводим в терминале построчно все синонимы к заданному слову в английском языке:
$ wn eliminate -synsv -synsa -synsn -synsr | grep -E '=>' | awk -F '=>' '{print $2}' | sed 's/, /\n/g' | sed 's/ //g'
где eliminate — заданное слово.
Программа wn входит в пакет wordnet (sudo urpmi wordnet / sudo apt install wordnet).
Аналогично для антонимов:
$ wn eliminate -antsv -antsa -antsn -antsr | grep -E '=>' | awk -F '=>' '{print $2}' | sed 's/, /\n/g' | sed 's/ //g'
Если почитаете man wn
, то узнаете, что a — прилагательные, v — глаголы, n — существительные, r — наречия, а выше мы ищем все части речи сразу.
Пример:
user@ChuwiHi12-Linux:~$ wn eliminate -synsv | grep -E '=>' | awk -F '=>' '{print $2}' | sed 's/, /\n/g' | sed 's/ //g'
destroy
destruct
kill
exhaust
discharge
expel
eject
release
beat
beatout
crush
shell
trounce
vanquish
remove
take
takeaway
withdraw
Перевод справки по команде trans
Translate Shell (ранее Google Translate CLI) — это программа-переводчик для командной строки терминала основанный на Google (по умолчанию), Bing переводчик, Яндекс.Перевод и Apertium. Это дает вам легкий доступ к одному из этих движков перевода в терминале.
Translate Shell брать отсюда: https://github.com/soimort/translate-shell
Установить прямо в терминале, не заходя в браузер:
$ wget git.io/trans $ chmod +x ./trans $ chown root:root ./trans $ sudo mv ./trans /usr/bin/trans
Оптимальный набор параметров чтобы выдавало только перевод, без фонетики и вариантов:
$ trans -t ru -b -d -no-autocorrect "Текст для перевода"
Удобно в скриптах использовать.
Читать далее Перевод справки по команде trans