Bash
-
Jak otestovat HTTP server pomocí telnetu?
Jednoduchý test HTTP serveru Opětovně jsem na tento problém narazil, snad jen proto, že jsem se potřeboval vyhnout programu lynx (a všem dalším www prohlížečům) – důvod si třeba domyslíte zde telnet lomitkari.cz 80 GET / HTTP/1.1 host: lomitkari.cz [dvakrat enter]
-
Jak vzdáleně odhlásit uživatele
Jak vzdáleně odhlásit uživatele v Ubuntu Hodí se hlavně na dětičky, neslyším šustění uklízených legových kostek, zato ale hlasitý řev youtube. Pak je na čase první výstraha – odhlásit dětičky! pkill -KILL -u {username} A pokud tato výstraha není dostatečná, vzdáleně vypínáme a sladké sny děti …
-
Jak otestovat rychlost sítě co nejjednodušeji
Ideální je iperf, o tom žádná. V některých případech ale na našich milých krabičkách (např. ubiquiti) není k dispozici a ani se nedá nijak jednoduše nainstalovat. V drtivé většině případů je ale k dispozici netcut tedy „nc“ a obligátní dd. Je to hrubé, neefektní, ale o to více efektivní 🙂 Server side: nc -l 1234 | dd of=/dev/null Client side: dd if=/dev/urandom bs=1500 count=20000 | nc xxx.xxx.xxx.xxx 1234 V podstatě jen vygenerujeme bordel o velikosti 30MB a protáhneme to linkou hrubě co to jde a pošleme to do kelu … 🙂 PS: Oněch block-size 1500 má svůj význam – čistě náhodou se jedná o defaultní MTU. Takže pokud máte jiné,…
-
Jak otestovat IMAP server pomocí telnetu
Občas potřebuji rychle otestovat funkčnost IMAP serveru a to se lehce udělá z bashe, buď pomocí telnetu, nebo příkazu nc, tedy: nc localhost 143 a1 LOGIN jmeno heslo a2 LIST "" "*" a3 LOGOUT Server – pokud je vše ok – po a2 vypíše list všech složek IMAPu…
-
Jak z MJPEG streamu z kamery ukládat v intervalu jeden snímek
Krkolomný název, což? Ale vyjadřuje přesně to, co chceme udělat tj. z webkamery, která nám kdesi třeba nad staveništěm spokojeně bzučí, dostaneme například co 5 minut jeden snímek ve formátu JPEG. Kamera má navíc HTTP Basic Auth, takže se nám to ještě komplikuje i o toto. Nejjednodušší, jak jsem objevil je přes curl stáhnout kousek streamu: curl -m 2 --user uzivatel:heslo "http://co.kde.cz/video.cgi?videp.mjpg" >output/out.mjpg Kde parametr „m“ vyjadřuje dobu po kterou se bude stream stahovat – teoreticky stačí i jedna vteřina, ale měl jsem občas problém s kolísavostí kvality internetu na straně stavby, tedy raději 2s. Parametr „user“ nám zabezpečí autentizaci. Následně pak pomocí ffmpeg vyexportovat z videa snímky: ffmpeg -i…
-
Jak v BASH odstranit diakritiku v obsahu souboru
Existuje kouzelný program recode recode -f utf8..flat soubor.txt Jak prosté milý Watsone …
-
if $? -ne 0 syntax error then unexpected
V BASHi poměrně normálně fungující if [ $? -ne 0 ]; then ... fi v různé variantě shellu hází chyby (syntax error then unexpected), chvilku trvalo, než jsem došel na toto: if [[ $? -ne 0 ]]; then ... fi
-
Hromadná změna velikosti fotek (obrázků) snadno a rychle :)
Z balíku imagemagick skvěle fungující program convert (mimochodem umí i PDF 😉 ) Přepínač -auto-orient navíc umožní automatické otočení fotografie „hlavou nahoru“ for f in *.JPG ; do convert -auto-orient -resize 800x $f mini_$f ; done
-
Vykopírování dat z image celého HDD
Už se mi to taky párkrát povedlo – udělal jsem přes dd klon celého hdd, disk vyhodil/naformátoval/přerozdělil a až pak jsem zjistil, že jsem Jouza a chtěl jsem klonovat jen jedinou particii (ta se dá lokálně hezky připojit přes loop a vykopíruje se jen potřebné). Co teď? Snad jedině vyklonovat obraz na nový (starý) hdd, udělat tentokrát klon jen particie a nanovo … nebo: # apt-get install qemu-utils # modprobe nbd # qemu-nbd -c /dev/nbd0 /cesta/k/tomu/img_celeho_disku.img # mount /dev/nbd0p1 /media/partition1/ # mount /dev/nbd0p2 /media/partition2/ # mount /dev/nbd0p3 /media/partition3/ ... Díky quemu-utils získáme modul nbd (networkblock device), který umí mávnutím kouzelného proutku jako lokální blokové zařízení zpřístupnit síťové úložiště. Ale aby…
-
Scan o velikosti A4 do souboru
Občas potřebuji něco nascanovat ze síťového scanneru a protože jsem lenoch a na U13.10 už nefunguje (jak to???) můj stařičký Brother DCP-8045D, scanuju ze serveru, kde je ještě starší U8.04. Předpokladem je nainstalovaný scanner v systému, pak už to je celkem jednoduché: $ scanimage -x 210 -y 297 >soubor.pnm Následný převod do PDF: $ convert soubor.pnm soubor.pdf