CSS for code highlight

06 марта 2022

Преобразование HTML в CSV или обработка HTML таблиц в Bash

Потребовалось обработать уже готовые отчеты в HTML файлах, а именно - из каждого файла-отчета взять конкретную ячейку таблицы и просуммировать, своего рода - SUM() и GROUP BY (в SQL). Сначала думал написать скрипт например на Python, который бы парсил HTML и т.д. и т.п., но...

29 января 2022

Библиотеки для работы с Excel в Go

Нашел такие библиотеки:
github.com/tealeg/xlsx v1.0.5 (Go 1.12) требуется для библиотеки github.com/ivahaev/go-xlsx-templater (Go 1.13), о пакете от автора. Но с минимальными "допиливаниями" одного системного пакета все собирается и работает на Go 1.10.8 (об этом позже...)
github.com/qax-os/excelize v1.4.0 работает в Go с версии 1.8, а значит и на последней для XP - 1.10.8
github.com/extrame/xls для чтения xls файлов
github.com/unidoc/unioffice (Коммерческая)

Использование старых версий библиотек в Go

Понадобилось использовать Go версии 1.10 , т.к. это самая последняя, которая работает в Windows XP (см.), но вот все доступные библиотеки для работы с XLSX файлами без самого офиса требуют либо версии 1.12 либо 1.15. После долгих копаний в интернете таки нашел, что старая версия Excelize v1.4.1 работает в Go от 1.8 и выше, нашел ее в архиве на гитхабе - Excelize v1.4.1

Далее просто - качаем, распаковывем, переносим в папку с библиотеками, ставим, компилируем, профит :)
PS: Сохранил на всякий случай в вебархив v1.4.0 / v1.4.1.
# скачиваем из архива и распаковываем
wget -O excelize-1.4.1.zip https://github.com/qax-os/excelize/archive/refs/tags/v1.4.1.zip
unzip excelize-1.4.1.zip

# на всякий случай чистим, создаем папку в исходниках библиотек
rm -vrf ~/go/src/github.com/qax-os/excelize
mkdir -p ~/go/src/github.com/qax-os

# перемещаем распакованную библиотеку в иходники и собираем ее
mv excelize-1.4.1 ~/go/src/github.com/qax-os/excelize
go get -v github.com/qax-os/excelize

# компилируем файл
go build -o test-excelize-1.4.1 test-excelize-1.4.1.go
GOOS=windows GOARCH=386 go build -o test-excelize-1.4.1.exe test-excelize-1.4.1.go

06 ноября 2021

Перенос/миграция приложения с Oracle 9i на Oracle 18c XE. Часть 1: Вступление

Да, задумал сделать вот такой вот "upgrade", так как ... 

Как узнать версию Red Hat Enterprise Linux

Просто оставлю это здесь, варианты команд в командной строке:

cat /etc/issue
cat /proc/version
cat /etc/redhat-release
lsb_release -a
uname -a
rpm -qa | grep release

PS: Но, к сожалению они не показывают update версию, по крайней мере для 4ки, а я хотел узнать именно update версию. Разве что, может быть

rpm -qa | grep release
выводит - redhat-release-4ES-2, но не уверен, т.к. по версии ядра 2.6.9-5.ELsmp совсем не то получается. Кстати, косвенно можно предположить по версии ядра, список здесь

PPS: да, вот с такими древними мамонтами приходится работать :-)

02 августа 2021

Вставка и подсветка фрагментов исходного кода в блоге

В заметках частенько требуется вставить какой либо фрагмент исходного кода или shell команды и чтобы это было удобно читать необходимо код отформатировать и сделать подсветку синтаксиса.

17 июля 2021

Расшаривание папки в Linux для доступа из Windows - общая сетевая папка (Samba)

Понадобилось по быстрому передать файлы на "виндовую" машину, находящуюся в этой же локальной сети. На виндовой машине ничего не было (ни WinScp, ничего и качать ставить не охота :)), поэтому вспомнил про Samba.

27 апреля 2021

Как скачать видео с YouTube под Linux? - Youtube-dl

Собственно и не только под Linux.

Недавно обнаружил для себя youtube-dl, не знаю почему раньше на него не наткнулся, наверно потому что по привычке пользовался веб-сервисами, да и собственно делаю это довольно редко.

25 марта 2021

Не работает клавиатура в Remmina при подключении по RDP

Система: Linux Mint 18.3 , Remmina 1.4.7

В моем случае при подключении Remmina на Windows 10 по RDP все замечательно работало, но если на Windows 10 запустить VirtualBox то в ней не воспринимались какие-либо нажатия на клавиатуре ни в какой раскладке, только стрелки и Enter, либо же нажатия совершенно неправильно интерпретировались.

Последнее...

CURL вместо Postman / Swagger