мая 28, 2020, 04:00:00

Новости:

Перейти на сайт https://xubuntu-ru.net


Последние сообщения

Страницы 1 ... 8 9 10
91
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - марта 04, 2020, 21:50:53
Сегодня обновился firefox до 74.0 вместо 73.0.
92
How-To и FAQ / Re: Руководство по допиливанию...
Последний ответ от el guahiro - марта 01, 2020, 21:56:57
Поиск по содержимому файлов doc, docx, xls, xlsx и pdf в GUI Linux
Search the contents of doc, docx, xls, xlsx, and pdf files in the Linux GUI
Есть в Linux такая утилитка, под названием Silver-searcher.
Ищет она быстрее, чем grep, синтаксис проще. Например, найти что-то в директории с тестовыми файлами, заходим терминалом в директорию, где собираемся искать и набираем:
ag "слово с пробелами"или
ag словобезпробеловПоизк рекурсивный по поддиректориям, ищет быстро, выхлоп лаконичный, искомое слово в строке подсвечено, название файла выделено цветом.
CLI опции утилиты ag можно посмотреть здесь
Ставится она так, в терминале:
sudo add-apt-repository ppa:pgolm/the-silver-searcher
sudo apt-get update
sudo apt-get install the-silver-searcher
Или можно скомпилировать, скачав с  Github
Но у меня, как и большинства обычных юзеров, на компьютере тысячи файлов офисных форматов doc, docx, xls, xlsx и pdf. В них Silver-searcher не ищет.
Не беда. Пишем скрипт с незатейливым названием "ищи", такого содержания:
#!/bin/bash
echo -e "\n
Поиск слова во всех файлах этой папки, введите запрос \n
Результаты поиска по введенному далее запросу \n"
echo -e "\033[37;1;41m  "СЛОВО:" \033[0m"
read response

find . -name "*.doc" |
while read i; do catdoc "$i" |
ag "$response" && echo -e "\033[37;1;41m  "в файле $i" \033[0m" ; done

find . -name "*.docx" |
while read i; do docx2txt < "$i" |
ag "$response" && echo -e "\033[37;1;41m  "в файле $i" \033[0m" ; done

find . -name "*.xls" |
while read i; do xls2csv "$i" |
ag "$response" && echo -e "\033[37;1;41m  "в файле $i" \033[0m" ; done

find . -name "*.xlsx" |
while read i; do xlsx2csv "$i" |
ag "$response" && echo -e "\033[37;1;41m  "в файле $i" \033[0m" ; done

find . -name "*.pdf" |
while read i; do pdftotext -q -layout "$i" - | less |
ag "$response" && echo -e "\033[37;1;41m  "в файле $i" \033[0m" ; done

echo -e "\033[1m\033[38;5;11m"Время поиска $SECONDS секунд"\033[0m"
Скрипт сохраняем, даём права на исполнение и бросаем куда-нибуть в $PATH, т.е. в директорию, где хранятся исполняемые е файлы, например в ~/.local/bin/
Потом создаём ПКМ Thunar под названием "ИЩИ: поиск в офисных файлах по содержанию" на команду:
xfce4-terminal -H -e  "bash -c  ищи"Условие появления:
каталоги, иконка любая.
Теперь, при нажатии ПКМ ИЩИ  на каталог откроектся терминал, надо будет вбить слово и через секунду высыпятся результаты поиска - название файла и одна строчка в этом файле, в которой содержится искомый текст. Если мы хотим, чтобы было две строчки сверхуи снизу, то после ag в скрипте надо дописать -C, если больше, то: -C цифра строк.
Если хотим поискать в файлах формата Libreoffice, дописываем скрипт, используя утилиту unoconv (скажу по секрету, у el guahiro скрипт ищет даже по файлам AutoCAD, но вам это не надо).
Так выглядит выдача поиска:

Видео, как это работает
Иконку этого ПКМ, изготовления аффтора этих строк, прилагаю.
Надеюсь, кому-то пригодится. Искренне ваш, el guahiro.
93
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - февраля 28, 2020, 20:50:13
Сегодня, в числе 93-х обновляемых пакетов, обновляются:
- modemmanager 1.12.6-1 вместо 1.10.4-0.1
- pulseaudio 13.99.1вместо 13.0-3
- vlc 3.0.8-4 вместо 3.0.8-3
- xkb 2.29-1 вместо 2.26-2
94
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - февраля 27, 2020, 21:08:08
Сегодня большое обновление - 144 пакета (в основном за счет обновления libreoffice), в том числе:
- bluez 5.53-0 вместо 5.52-0
- gvfs 1.43.90-1 вместо 1.42.2-1
- libreoffice 6.4.0 вместо 6.4.0
- network-manager 1.22.8 вместо 1.22.4
- snapd 2.44~pre1 вместо 2.43.3 (будь он неладен - устал его удалять уже)
95
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - февраля 26, 2020, 21:08:49
Сегодня, в числе прочих, обновляются пакеты:
- systemd 244.3-1 вместо 244.2-1
- ubuntu-minimal 1.444 вместо 1.443
- xfce4-weather-plugin 0.10.1-0 вместо 0.10.0-1
- xfce4-whiskermenu-plugin 2.4.2-0 вместо 2.3.5-1
96
How-To и FAQ / Re: Руководство по допиливанию...
Последний ответ от el guahiro - февраля 24, 2020, 21:01:21
Как и все, я делаю бэкапы.
Основная причина - поездки (на жд всё же работаю), дугая причина - SSD. Он когда-нибудь накроется, я это знаю.
Для бэкапа на внешний HDD РАНЬШЕ я использовал команду ПКМ Thunar:
rsync -avu --delete /home/$USER/%n  /media/user/*-*-*-* |zenity --progress --width=400 --height=100 --title="Идет синхронизация" --text "Не отключать внешний носитель!" --auto-close --pulsate; notify-send "Синхронизация закончена, можете отключить внешний носитель" ; mpv /home/user/Музыка/Звуки_уведомлений/alarm_clock_труба.mp3Самое важное здесь, это:
/home/$USER/%nВедь эту ПКМ Thunar я могу запустить по ошибке из HDD, из какой-то папки, которая имеет такое же название в $HOME на компе. Но всё равно скопируется  с компа на HDD. Ошибка исключена, но хотелось, чтоб команда с нежелательной директории вообще не запускалась.
-------
Однако немного подумав, сочинил две команды синхронизации с защитой "от дурака":
1. Скинуть с внешнего HDD
bash -c 'if [[ $PWD/ = /media/* ]]; then rsync -avu --delete /media/user/*-*-*-*/%n  $HOME |zenity --progress --width=400 --height=100 --title="Идет синхронизация" --text "Не отключать внешний носитель!" --auto-close --pulsate; notify-send "Синхронизация закончена, можете оключить внешний носитель" ; mpv /home/user/Музыка/Звуки_уведомлений/alarm_clock_труба.mp3 ; else notify-send "Вы не на внешнем HDD" ; mpv /usr/share/sounds/sound-icons/cockchafer-gentleman-1.wav ; fi'2. Скинуть на внешний HDD
bash -c 'if [[ $PWD/ = /home/* ]]; then rsync -avu --delete /home/$USER/%n  /media/user/*-*-*-* |zenity --progress --width=400 --height=100 --title="Идет синхронизация" --text "Не отключать внешний носитель!" --auto-close --pulsate; notify-send "Синхронизация закончена, можете отключить внешний носитель" ; mpv /home/user/Музыка/Звуки_уведомлений/alarm_clock_труба.mp3 ; else notify-send "Вы не в той папке" ; mpv /usr/share/sounds/sound-icons/cockchafer-gentleman-1.wav ; fi'При попытке операции из нежелательной директории раздаётся звук неудачи, а самой сихронизации не происходит.
Звуки для ПКМ Thunar я закинул на Я.Диск.
и на Мегу  - для юзеров, где Яндекс диск не работает.

Вообще, конструкцией типа:
bash -c 'if [[ $PWD/ = /директория_для_выполнения_команды/* ]]; then команда_ПКМ_Tunar; fi'можно задать, где команда ПКМ Thunar может работать. Во остальных местах кроме /директория_для_выполнения_команды/ и её поддиректорий команда работать не будет.

Искренне ваш, el guahiro
97
How-To и FAQ / Re: Руководство по допиливанию...
Последний ответ от el guahiro - февраля 24, 2020, 01:55:00
Продолжая цикл "Bash и Thunar для младенцев"
Когда-то в этой теме я писал про ПКМ Thunar "Разрезать картинку по горизонтали" и "Разрезать картинку по вертикали".
Поскольку иконостас ПКМов Thunar у меня уде не влазит в вертикальный размер ноутбука, есть два метода:
1. Ненужные ПКМ отключить, стерев все расширения файла, включая звезду "*" во вкладке "Условия появления" (Правка>Особые действия>Открываем Нужное действие> правая вкаладка)
2. Объединить два действия в одно.
Чем я и занялся.
Действие ПКМ Thunar "Разрезать картинки на 2,3,4 части"
(поможет фрилансерам/студентам, обрабатывающим цифровые сканы, например, развороты тетради/буклета, чтоб потом их сшить в нормальном порядке, строителям на объекте для нарезки чертежей на части - для распечатки на принтере формата A4 и т.п.)
Команда:
cut_picture2methods.sh %N; notify-send "Разрезали картинку"Условия появления: Изображения
Скрипт cut_picture2methods.sh выглядит так:
#!/bin/bash
OPTION1=$(zenity --list --radiolist  --width 380 --height 200\
 --title=" картинку на 2,3,4 части" \
       --text="Выберите, как режем" \
       --column="отметка" --column="Направление реза" \
       TRUE "горизонтальное" FALSE "вертикальное")
if [ "$OPTION1" = "горизонтальное"  ] ; then OPTION=cut-horiz.sh;
else  OPTION=cut-vert.sh; fi
myArray=( "$@" )
for i in "$@"; do
"$OPTION"  "$i" ; done
 exit
                 fi)
Видим, что для работы этого скрипта надо ещё два.
Вот они.
Скрипт cut-horiz.sh:
#!/bin/bash
#from el guahiro, USSR
IFS=$'\n'
images=$@
size=`zenity --entry --text="величина части в процентах, например 50, это на 2 части, 34 - это н 3 части, 25 - на четыре"`
if [ "$size" -gt 0 -a "$size" -lt 100 ]; then
    for image in $images; do
        dn=`dirname  $image`
        bn=`basename $image`
        convert $image -crop 100%x${size}% ${dn}/${size}_$image
    done
fi
Скрипт cut-vert.sh:
#!/bin/bash
#from el guahiro, USSR
IFS=$'\n'
images=$@
size=`zenity --entry --text="величина части в процентах, например 50, это на 2 части, 34 - это н 3 части, 25 - на четыре"`
if [ "$size" -gt 0 -a "$size" -lt 100 ]; then
    for image in $images; do
        dn=`dirname  $image`
        bn=`basename $image`
        convert $image -crop ${size}%x100% ${dn}/${size}_$image
    done
fi
Все три скрипта забрасываем в ~./local/bin, предварительно дав им права на выполнение.
Тепреь, при ПКМ на картинку "Разрезать картинки на 2,3,4 части" появится сначала диалог с вопросом о направлении разрезки, а потом другой диалог с вопросом на сколько частей резать.
Я бы мог это всё реализовать в одном скрипте, но тогда надо много забиапть руками в два окошечка, что точно запутает юзера.

Надеюсь, было интересно. Искрене ваш, el
98
How-To и FAQ / Re: Руководство по допиливанию...
Последний ответ от el guahiro - февраля 23, 2020, 14:15:56
Простейший проигрыватель радио/видео (в т.ч. YouTube) из буфера обмена в Xubuntu
Разбирал коллекцию ссылок на радио и видео, устал открывать проигрыватель. Как всегда захотелось запилить, чтоб открывалось одним нажатием. Желательно мышки. Эргономично чтобы. Делаю:
!. Беру отсюда скрипт, называю его mpv_clipboard.sh Содержание;
#!/bin/bash
#from https://www.linux.org.ru/forum/desktop/15406056
link="$(xclip -selection c -o)"
mpv $link
play_status=$?
if [ $play_status -ne 0 ]; then
    msg='Ошибка открытия '$link
    notify-send 'ЧТО-ТО ПОШЛО НЕ ТАК' "$(echo $msg)" --icon=dialog-information
fi
2. Создаю desktop файл такого содержания:
[Desktop Entry]
Version=1.0
Type=Application
Name=проиграть из буфера
Comment=радио видео из буфера обмена
Exec=mpv_clipboard.sh
Icon=/usr/share/icons/el_guahiro/radio.png
Path=
Terminal=false
StartupNotify=false
3. Создаю другой файл такого содержания:
[Desktop Entry]
Version=1.0
Type=Application
Name=остановить радио
Comment=радио видео из буфера обмена
Exec=pkill mpv
Icon=/usr/share/icons/el_guahiro/radio-stop.png
Path=
Terminal=false
StartupNotify=false
Name[ru]=остановить радио
Обоим файлам даю в GUI права на выполнение:ПКМ на файл> Ствойства>Разрешить как программу
Отправляю их на панель следующим методом:
Из меню Whisker на любую программу>Отправить на панель
Потом на панели на эту программу:Свойства>в открытое окно перетягиваю два эти desktop файла>удаляю ярлык первоначальной программы.
Теперь, когда я ковыряюсь в коллекции ссылок на радио в каком-нибудь xml или pls или mp3u файле, я могу скопировать ссылку и прослушать это через лёгкий mpv проигрыватель. Аналогично - с роликом на YouTube - скопировать ссылку и посмотреть в mpv (что гораздо лучше, т.к смотреть ролик YouTube в любом браузере, кроме Surf - это засорять кэш).
Если вы хотите повесить этот функционал на хоткеи, то можете назначить один хоткей на команду:
sh -c 'mpv "$(xclip -o)"'а другой на команду:
pkill mpvчтоб закрыть фоновое проигрывание.
Как это выглядит
Иконки для desktop файлов рисовал сам. Прикрепляю к этому посту (видно зареганным пользователям)

Искренне ваш, el guahiro.
99
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - февраля 22, 2020, 20:49:47
Сегодня, среди прочего, обновляются файлы virtualbox до версии 6.1.4 вместо 6.1.2.
100
Тестирование / Re: Тестирование Xubuntu 20.04...
Последний ответ от denkin - февраля 21, 2020, 20:54:49
Сегодня, в числе прочих, обновляется mesa до версии 20.0.0-1 вместо 19.3.3-1
Страницы 1 ... 8 9 10