Linux: именованные каналы
Категории:
HowTo
Для взаимодействия между различными процессами в *nix можно создавать именованные каналы, которые позволяют перенапрявлять ввод/вывод.
В одном терминале
$ mkfifo named_pipe $ gzip -9 -c < named_pipe > out.gz &
В другом
echo Hello, world! > named_pipe
Теперь мы можем увидеть полученный файл.
$ zcat out.gz Hello, world!
Пример использования именованных каналов в linux
И удалить именованный канал
$ rm named_pipe
WINE: создание 32х битного префикса
Категории:
HowTo
Некоторым приложениям, которые запускаются в wine нужно создание 32х битного префикса вместо 64х битного (это если у вас 64х битное окружение).
WINEPREFIX='/home/username/prefix32' WINEARCH='win32' wine 'wineboot'
Директории /home/username/prefix32 не должно существовать. Иначе wine ляжет с ошибкой.
Unicode characters to html entities
Категории:
Разработка
function unicode_escape_sequences($str){
$working = json_encode($str);
$working = preg_replace('/\u([0-9a-z]{4})/', '&#x$1;', $working);
return json_decode($working);
}
Python: Подсчет уникальных объектов в коллекции
Категории:
HowTo
>>> from collections import Counter
>>> Counter('aaabbb')
Counter({'a': 3, 'b': 3})