Shell script argument parsing

Ha shell scriptet írunk, gyakran előfordulhat, hogy szeretnénk azt paraméterezhetővé tenni.

Az alapvető módszerem, hogy vannak bizonyos beállítások definiálva a fájl elején egy alapértelmezett értékkel, majd a paraméterektől függően változtatom ezek értékét:

#!/bin/sh

IS_FLAG_A_SET=0

for i in $@; do
    case $i in
        '-a')
            IS_FLAG_A_SET=1
            ;;
        *)
            echo "Usage $0 -a"
            exit 1
    esac
done

if [ $IS_FLAG_A_SET -eq 1 ]; then
    echo "FLAG A"
fi

Lekezeltük még azt is, hogy össze-vissza paramétereket ne engedjünk csak úgy bepasszintani, ekkor ugynis kiírjuk a használati utasítást és hibakóddal kilépünk.

Izgalmasabb a helyzet, ha nem csak flagekkel dolgozunk, hanem szeretnénk valamilyen értéket átadni egy opcióval, mondjuk egy fájlnevet. Ha tudjuk, hogy csak egy ilyen lehet az adott programban, akkor megtehetjük, hogy azt mondjuk, hogy legyen az utolsó paraméter mindig a fájlnév.

FILE_NAME=${@:-1}
echo $FILE_NAME

De ez egyáltalán nem dinamikus, hiszen bármikor lehet olyan igény, hogy több értéket szeretnénk átadni. Ekkor például elkezdhetünk úgy dolgozni a paramétereken, hogy ha például -f kapcsolót kaptuk, akkor a következő paraméter a fájlnévnek vesszük:

Letöltés Humble Bundle-ről gyorsan, batch-ben

Roppant kényelmetlen egyenként végigklikkelni a a sok-sok linken Humble Bundle-on, amikor megvettél egy nagy adag könyvet potom áron.

Ezt kicsit meg lehet gyorsítani, ha vetünk egy pillantást a következő gistre: https://gist.github.com/Ajnasz/3356db6fd0e81013927c9cf5821a73de

cryptsetup luksFormat Invalid argument

enigma részlet

Mondjuk egy már létező howto alapján szeretnél titkosított filerendszert készíteni.
Viszont a cryptsetup luksFormat /dev/sdb1 parancs nem kér jelszót, akkor próbáld meg, hogy --verbose paramétert is beadod neki. Így egy kicsit több outputot fog kidobni magából:

VIM csomagkezelés howto

packages felirat

Az egyre több erre hajazó kiegészítő szinte messziről jövő segélykiáltásként szelte át az internet-étert egy beépített csomagkezelőért.

Így lehetett, hogy Vim 8-ban debütált a csomagok támogatása. vimhelp.org/repeat.txt.html#packages

Sajnos vagy nem sajnos jó ideje Neovim felhasználóvá avanzsáltam és minden informálódás nélkül leírtam, hogy ez a package manageres móka csak Vim-ben van, Neovimben nincs. Viszont a minap a Neovim git logot böngészve mintha erre utaló szavakat olvastam volna. A megérzésem jó volt, Neovimben is van Vim 8 csomagkezelő.

Megjegyzés: A csomagkezelő kifejezés nem a legmegfelelőbb, a Vim 8 packages a csomagok betöltését végzi, de nem telepíti őket.

Nikon D5300 webkamera Linuxon

Fénykép a Nikon D5300 fényképezőgépről

Képzeljük el milyen profi videó társalgást lehetne tartani akárkikkel ha egy jobb objektívvel rendelkező DSLR kamerát használnál webkamerként!
Szépen beállítod a kamerát, fókuszt, fényt és miegymást, és szuper minőségben látnak majd anyuék, apuék vagy akár egy kedves kolléga a föld túloldalán. (Amint lesz webcam támogatás a linuxos Skype-on is.)

Szóval hogyan is lehet Linuxon webkameraként használni egy digitális fényképező gépet? Nekem egy Nikon 5300 van éppen és roppant könnyen össze tudtam hozzá vadászni az információkat az internet végtelen világából.

Hupper 2

Hupper better experience promotion image

Nagyjából az elején kezdem a történetet:
Sok-sok évvel ezelőtt, amikor kiterjesztéseket még többnyire Firefox böngészőhöz lehetett írni, akkor készült a hup.hu weboldalhoz a hupper nevű add-on. Arra hivatott, hogy a napjuk több-kevesebb részét ott töltő kedves felhasználók valamivel hatékonyabban tudják kezelni a weblapot.
Az extension funkcióit főleg a felhasználók igénye alakította, így lehet például közvetlenül navigálni az új hozzászólások között, majd hasonló funkció készült az olvasatlan hozzászólásokkal rendelkező cikkekhez is.
Emellett át lehet kicsit alakítani a megjelenést is, a jobb és bal oldalon található blokkok áthelyezhetőek, összecsukhatóak, eltüntethetőek.
Az egyik legnépszerűbb fejlesztés azonban kétségkívül az úgynevezett troll szűrő, aminek köszönhetően elrejthetőek azok a hozzászólások, amelyeket nem túl kedvelt felhasználók írtak.

How to start uzbl browser on startup on a Raspberry PI

I wanted to use my Raspberry Pi to view build status, graphite charts and some other stuff on a TV.
I have my Raspberry, I needed to configure it to start uzbl (which is a very lightweight and easy to script browser).

Once you have a working raspberry (or any Debian environment), follow the steps written below:

Install software

We will need an xserver to have a graphical interface, a window manager and the web browser.
I choose Fluxbox as WM
Use apt-get install command to install xorg, fluxbox and uzbl:

El Camino de Santiago

Idén februárban vagy márciusban jutott először eszembe: mi lenne, ha? Már nem is tudom, hogy honnan jött az ötlet. Viszont jött, aztán kicsit fészkelődött, próbált helyet csinálni a fejemben, hogy aztán ne csak úgy bejárjon néha, hanem be is költözzön. Mondták, ha jön, akkor be kell engedni.
Beengedtem, mára már a falat is olyanra festette, amilyet ő szeret, elhozta a saját bútorait meg a fogkeféjét is.

Internet cenzúra Magyarországon

Néhány weboldalon megjelent ma, hogy kishazánkban blokkolják majd a külföldi fogadási oldalakat. Írt erről a friss főszerkesztővel bíró origó is, de cikkezett a 444.hu is, meg nyilván az ország többi újságja is.

Igazából nem új dolog bizonyos szolgáltatások blokkolása, láttunk már ilyet Kínában nem is egyszer vagy a törököknél is sőt, például pár éve Egyiptomban volt jellemző, amikor a helyiek az internet segítségével közvetítették volna, hogy éppen hogyan lövik vagy nem lövik őket. Elég jellemző, hogy kormányok vagy uralkodók a nekik nem tetsző weblapokat és szolgáltatásokat elérhetetlenné teszik.

Intel support

Emlékszem arra, amikor 5400 RPM-mel pörgő HDD helyére vettem egy 7200 RPM-mel pörgőt. Rendesen lehetett érezni a különbséget, amitől nagyon boldog voltam. Aztán 2012 nyarán vettem egy Intel SSD-t a 330-as szériából. Korábban a HDD LED volt az egyik legfontosabb jelzőkészülék a gépen: amíg egy-egy nagyobb darab szoftver összeszedte magát, addig az harsányan villogott, jelezvén, hogy üljek nyugodtan, fél perc és már mehet is a munka. Az SSD beszerelése után ez megszűnt, így némi riadalmat okozván, hiszen sokáig úgy tűnt, hogy minden elromlott. Tehát jó volt, gyors volt, könnyű is volt.