abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:11 | Pozvánky

    Chcete vědět, co se odehrálo ve světě techniky za poslední měsíc? Nebo si popovídat o tom, co zrovna bastlíte? Pak dorazte na prosincovou Virtuální Bastlírnu s mikrofonem a kamerou, nalijte si něco k pití a ponořte se s strahovskými bastlíři do diskuze u virtuálního piva o technice i všem možném okolo. O čem budou tentokrát strahováci referovat? Téměř každý už si všiml významného zdražení RAM a SSD, jsou zde ale i příjemnější zprávy. Průša uvádí

    … více »
    bkralik | Komentářů: 0
    dnes 12:55 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) podporuje vyjádření partnerů ze Spojeného království, kteří upozorňují na škodlivé aktivity společností Anxun Information Technology (též „I-S00N“) (pdf) a Beijing Integrity Technology (též „Integrity Tech“) působících v kyberprostoru a sídlících v Čínské lidové republice (ČLR). Tyto společnosti jsou součástí komplexního ekosystému soukromých subjektů v ČLR,

    … více »
    Ladislav Hagara | Komentářů: 2
    dnes 04:55 | IT novinky

    Společnost Pebble představila (YouTube) prsten s tlačítkem a mikrofonem Pebble Index 01 pro rychlé nahrávání hlasových poznámek. Prsten lze předobjednat za 75 dolarů.

    Ladislav Hagara | Komentářů: 5
    dnes 04:22 | IT novinky

    Společnost JetBrains v listopadu 2021 představila nové IDE s názvem Fleet. Tento týden oznámila jeho konec. Od 22. prosince 2025 již nebude možné Fleet stáhnout.

    Ladislav Hagara | Komentářů: 1
    včera 21:22 | Nová verze

    Byl vydán Mozilla Firefox 146.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 146 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 17:00 | IT novinky

    Před rokem převzala Digitální a informační agentura (DIA) vlastnictví a provoz jednotné státní domény gov.cz. Nyní spustila samoobslužný portál, který umožňuje orgánům veřejné moci snadno registrovat nové domény státní správy pod doménu gov.cz nebo spravovat ty stávající. Proces nové registrace, který dříve trval 30 dní, se nyní zkrátil na několik minut.

    Ladislav Hagara | Komentářů: 7
    včera 11:33 | IT novinky

    IBM kupuje za 11 miliard USD (229,1 miliardy Kč) firmu Confluent zabývající se datovou infrastrukturou. Posílí tak svoji nabídku cloudových služeb a využije růstu poptávky po těchto službách, který je poháněný umělou inteligencí.

    Ladislav Hagara | Komentářů: 0
    včera 01:55 | IT novinky

    Nejvyšší správní soud (NSS) podruhé zrušil pokutu za únik zákaznických údajů z e-shopu Mall.cz. Incidentem se musí znovu zabývat Úřad pro ochranu osobních údajů (ÚOOÚ). Samotný únik ještě neznamená, že správce dat porušil svou povinnost zajistit jejich bezpečnost, plyne z rozsudku dočasně zpřístupněného na úřední desce. Úřad musí vždy posoudit, zda byla přijatá opatření přiměřená povaze rizik, stavu techniky a nákladům.

    Ladislav Hagara | Komentářů: 13
    8.12. 18:44 | Komunita

    Organizace Free Software Foundation Europe (FSFE) zrušila svůj účet na 𝕏 (Twitter) s odůvodněním: "To, co mělo být původně místem pro dialog a výměnu informací, se proměnilo v centralizovanou arénu nepřátelství, dezinformací a ziskem motivovaného řízení, což je daleko od ideálů svobody, za nimiž stojíme". FSFE je aktivní na Mastodonu.

    Ladislav Hagara | Komentářů: 33
    8.12. 17:55 | IT novinky

    Paramount nabízí za celý Warner Bros. Discovery 30 USD na akcii, tj. celkově o 18 miliard USD více než nabízí Netflix. V hotovosti.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (48%)
     (19%)
     (17%)
     (22%)
     (15%)
     (24%)
     (16%)
     (18%)
    Celkem 450 hlasů
     Komentářů: 18, poslední 2.12. 18:34
    Rozcestník

    GNU/Linuxový zapisníček

    25.1.2005 14:16 | Přečteno: 1627× | © | poslední úprava: 25.1.2005 15:27

    Oč běží

    Rozhodl jsem se, že sem umístím svůj taj(em)ný GNU/Linuxový zápisníček. Postupně budu budu přidávat další věci, podle toho, jak se mi bude zápisníče rozrůstat. Snad to někomu k něčemu bude.

    Pokud byste někdo měl čím přispět k tomuto zápisníčku (něco, co tam není, co byste změnili, další variace na věci v něm již uvedené, zajímavé konstrukce příkazů, nestandartní využití příkazů, zjednodušení příkazů apod.) pište to prosím do komentářů. Budu to průběžně zpracovávat a doplňovat. Do nadpisu vašeho komentáře prosím na začátek napište, které sekce se to týká, ať se v tom vyznám. Časem také celému tomuto záznamu dám poněkud lepší formu než pouze pastnutý text mezi pre tagy a lépe jej uspořádám. Rád bych, aby se z toho stala jakási znalostní baze užitečných a často používaných věcí nad příkazovým řádkem. Mirror baze umístím časem také někde na mých domovských stránkách http://vcp.ligatura.org/, kde budou ke stažení i PS a PDF verze vysázené typografickým systémem TeX.

    Legenda k zápisníčku

    *     označuje popis
    $     označuje SHELL
    /     označení pro dodatkové informace
    
    ------------------     Jelikož jsem se snažil zapísnik nějak utřídit, tak
    : NAZEV SEKCE          takto je označena sekce.
    ------------------     Není to ovšem roztříděno zcela dokonale. Proč také?
    
    ---cut---     označuje, kde "říznout", používám pro krátké scripty
    

    Zápisníček

    ----------------------------------------------------------------------------
    : CVS
    ----------------------------------------------------------------------------
    
    * Zalozeni noveho repozitare
    $ cvs -d/cesta/k/cvsroot init
    
    * Zalozeni noveho modulu 
    $ cvs -d/cesta/k/cvsroot import -m"Initial import."  SOCRATES INITIAL
    
    ----------------------------------------------------------------------------
    : MASTER BOOT RECORD
    ----------------------------------------------------------------------------
    
    * Zalohovani MBR
    $ dd if=/dev/hda of=mbr.backup bs=512 count=1
    
    * Obnoveni CELEHO MBR ze zalohy
    $ dd of=/dev/hda if=mbr.backup bs=512 count=1
    
    * Obnoveni MBR, ale BEZ ZMEN PARTISEN
    $ dd of=/dev/hda if=mbr.backup bs=1 count=446
    
    / 446 byty            = bootloader
    / 4x16 byty (64 bytu) = partition table
    / 2 byty              = boot record signature
    
    ----------------------------------------------------------------------------
    : SSH
    ----------------------------------------------------------------------------
    
    * Vypis otisku
    $ ls /etc/ssh/*.pub | xargs -n 1 ssh-keygen -l -f
    
    * Vyuziti klicu k prihlasovani
    $ ssh-keygen -t dsa
    $ scp ~/.ssh/id_dsa.pub username@server:~/
    $ ssh username@server "cat ~/id_dsa.pub >> ~/.ssh/authorized_keys"
    $ rm ~/id_dsa.pub
    
    * Trik s tarem: poslat na remote host
    $ tar cf - myfiles | ssh remotehost " ( cd /destination/path ; tar xf - ) "
    * ziskat z remotehost
    $ ssh remotehost "( cd /source/path; tar cf - desiredfiles ) " | tar xf -
    
    * Trik s tarem, ale skrz nekolik masin: poslat ("rh" == remotehost)
    $ tar cf - myfiles | ssh rh1 " ssh rh2 \" ( cd /dest/path ; tar xf - ) \" "
    * ziskat
    $ ssh rh1 " ssh rh2 \"( cd /src/path; tar cf - desfiles ) \" " | tar xf -
    
    * SSH forvarding portu na localu
    $ ssh -N -L9090:localhost:80 localhost
    
    ----------------------------------------------------------------------------
    : GS
    ----------------------------------------------------------------------------
    
    * Prevod PS do jineho formatu
    $ gs -sDEVICE=jpeg -g500x500 -r40x40 -dBATCH -dNOPAUSE \
      -sOutputFile=soubor.jpg soubor.ps
    
    * Prevod PS do PDF
    $ gs -sDEVICE=pdfwrite -dBATCH -dNOPAUSE -sOutputFile=soubor.pdf soubor.ps
    
    * Prevod ISO-8859-2 do PS
    $ a2ps --column=1 --portrait --no-header --borders=no -P display \
      --encoding=latin2 -o vystup.ps vstup.txt
    
    * Prevod vsech souboru v adresari
    $ for i in *; do \
        a2ps --column=1 --portrait --no-header --borders=no -P display \
        --encoding=latin2 \ -o `basename $i txt`ps $i; \
      done
    
    ----------------------------------------------------------------------------
    : PSTOOLS
    ----------------------------------------------------------------------------
    
    * Otoceni vzhuru nohama
    $ pstops '0U(1w,1h)' in.ps > out.ps
    
    ----------------------------------------------------------------------------
    : FIND
    ----------------------------------------------------------------------------
    
    * Vyuziti 'find' na spusteni akce; do '{}' prijde nazev nalezeneho souboru
    $ find cesta -name regex -exec program parametry {} \;
    
    * Prava na soubory
    $ chmod 664 `find * -type f -print0`
    $ find -type f -print0 | xargs -0 chmod 0664
    
    * Prava na adresare
    $ chmod 775 `find * -type d -print0`
    $ find -type d -print0 | xargs -0 chmod 0775
    
    * Smazani souboru, pokud jich je priliz mnoho
    $ find . | grep 'filtr_souboru' | xargs rm -f
    
    * Zjisteni souhrnne velikosti vsech podadresaru v adresar
    $ find . -maxdepth 1 -type d -print | xargs du -sk | sort -rn
    
    * Velka na mala pismena a na velka
    $ find . | perl -nle 'rename $_, lc'
    $ find . | perl -nle 'rename $_, uc'
    
    ----------------------------------------------------------------------------
    : BASH
    ----------------------------------------------------------------------------
    
    * Odecteni dvou ASCII hodnot
    $ num=$(( 64#Z - 64#Z )) ; echo $num
    $ num=$(( 48#z - 48#a )) ; echo $num
    
    * Cykly, priklady vypisi cisla od 1 do 10
    $ for (( i=1; i <= 10; i++ )); do echo $i; done
    $ for i in `seq 1 10`; do echo $i; done
    $ i=1; stop=11; while [ "$i" != "$stop" ]; do echo "$i"; i=$(($i+1)); done
    
    * Nahrada prikazu 'ls'
    $ for A in *; do printf "$A\n"; done
    
    * Automaticky renice (ve scriptech)
    $ renice +15 -p $$ >/dev/null 2>&1
    
    * Trocha aritmetiky
    $ echo $(echo scale=2\; 100/5 | bc)
    
    * Ruzna nastaveni podle terminalu
    
    ---cut---
    i=`tty`
    case "$i" in
      "/dev/tty1") setterm parametry -store;;
      "/dev/tty2") setterm parametry -store;;
      "/dev/tty3") setterm parametry -store;;
    esac
    ---cut---
    
    * Zjisteni hodnoty packet loss pomoci pingu a echa pouze
    $ pl=$(ping -q -c 3 localhost) ; pl=${pl#*,*, } ; echo ${pl%%%*}
    
    * Funkce, ktera zjisti, zda je retezec IP adresou ci nikoliv
    
    ---cut---
    isip() {
      case "$*" in
        ""|*[!0-9.]*|*[!0-9]) return 1 ;;
      esac
      local IFS=.
      set -- $*
      [ $# -eq 4 ] &&
      [ ${1:-666} -le 255 ] &&
      [ ${2:-666} -le 255 ] &&
      [ ${3:-666} -le 255 ] &&
      [ ${4:-666} -le 254 ]
    }
    ---cut---
    
    * Zjisteni basename souboru (odstraneni cele cesty)
    $ basename () { local path="${1##*/}" ; echo ${path%${2}}; }
    
    * Funkce: soubor se spusti, pokud ma spustitelny atribut
    $ eix () { [ -x $1 ] && "$@" & }
    
    * Nahrada za `echo "ahoj" | sed 's/a/A/'` (vypise "Ahoj")
    $ S="ahoj";S="${S//a/A}";echo $S
    
    ----------------------------------------------------------------------------
    : PERL
    ----------------------------------------------------------------------------
    
    * Instalace novych modulu (napr. Date::Parse)
    $ su root -c 'perl -MCPAN -e shell'
    cpan> install Date::Parse
    cpan> exit
    
    ----------------------------------------------------------------------------
    : IPTABLES
    ----------------------------------------------------------------------------
    
    * Totalni vycisteni pravidel
    
    ---cut---
    #!/bin/sh
    /sbin/iptables -F
    /sbin/iptables -X
    /sbin/iptables -t nat -F
    
    cat /proc/ip_tables_names | while read $table
    do
      /sbin/iptables -t $table -F
      /sbin/iptables -t $table -X
    done
    ---cut---
    
    ----------------------------------------------------------------------------
    : TAR
    ----------------------------------------------------------------------------
    
    * Rozbaleni .bz2 archivu
    $ tar -xjf archiv.tar.bz2
    
    * Zabaleni adresare do .tar.gz
    $ tar czvf adresar.tar.gz adresar
    
    * Rozbaleni adresare.tar.gz
    $ tar xzvf adresar.tar.gz
    
    * Uklizeni po rozbaleni spatneho balicku
    $ rm `tar ftz jmeno_balicku.tar.gz`
    
    ----------------------------------------------------------------------------
    : DIFF
    ----------------------------------------------------------------------------
    
    * Ruzna pouzifi prikazu "diff"
    $ diff -u puvodni_soubor novy_soubor > patch
    $ diff -ru puvodni_strom/ novy_strom/ > patch
    $ diff -ruN puvodni_strom/ novy_strom_s_novymi_soubory/ > patch
    
    ----------------------------------------------------------------------------
    : RUZNE
    ----------------------------------------------------------------------------
    
    * "Executable" bit jen pro adresare, vse pro cteni pro vsechny
    $ chmod -R a+rX
    
    * Alternativa k "tail -f soubor"
    $ less +F soubor
    
    * Zapnuti numlocku ($tty je tty1-N)
    $ setleds -D +num < $tty &
    
    * Hodnota CPU load
    $ echo "CPU Load is `ps -eao \"pcpu\" | awk '{a+=$1} END {print a}'`."
    
    * Hodnota MEM load
    $ echo "MEM Load is `ps -eao \"pmem\" | awk '{a+=$1} END {print a}'`."
    
    * Vypsani vsech uzivatelu s UID>500&&<1010
    $ awk -F: '{if($3>500&&$3<1010)print$1}' /etc/passwd
    
    * Vypsani jednoduche napovedy k prikazum v adresari /bin
    $ ls -1 /bin | xargs -l1 whatis 2>/dev/null | grep -v "nothing appropriate"
    
    * Generator nahodneho retezce z predem daneho rozsahu znaku (hexa, hesla apod.)
    $ tr -dc '1234567890abcedf' < /dev/urandom | head -c 9
    
    * Odmazani vseho za poslednim znakem "/" vcetne (takze zbude a/b)
    $ echo "a/b/c" | sed -e "s/\(.*\)\/[^\/]*/\1/"
    
    * Odmazani vseho za poslednim znakem "/" (takze zbude a/b/)
    $ echo "a/b/c" | sed -e "s/\(.*\/\)[^\/]*/\1/"
    
    * Odmazani vseho pred poslednim znakem "/" vcetne (takze zbude jen c)
    $ echo "a/b/c" | sed -e "s/.*\/\([^\/]*\)/\1/"
    
    * Domazani prazdnych znaku ze zacatku radku
    $ cat soubor | sed -e "s/^[\ \t]*//"
    
    ----------------------------------------------------------------------------
    : POZOR - NEBEZPECI!
    ----------------------------------------------------------------------------
    
    * Fork bombs jsou sakra nebezpecne! (chrante se pomoci `ulimit -u 100')
    
    $ :(){ :|:& };:
    $ $0 & $0 &
    
    ---cut---
    #!/bin/sh
    $0 &
    exec $0
    ---cut---
    
    ---cut---
    #!/bin/bash
    while true
    do
      $0 &
    done
    exit 0
    ---cut---
    
    * Take je treba dat pozor, aby se zadny adresar nejmenovat "-r|-R" apod.,
    * protoze by to nemuselo dopadnout dobre!
    
    * Prikaz 'rm -rf' nikdy nepouzivame pod rootem!!!
    

    Závěrem

    No a to je asi tak prozatím vše... Užijte to ve zdraví. A hlavně nezapomeňte, že to psal člověk a nadto já, takže tam můžou - ne to není rozhodně přesně formulováno - takže tam s největší pravděpodobností jsou chyby!        

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    25.1.2005 16:10 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše doplneni - dalsi uzitecne volby pro ghostscript
    Pokud zpracovavate ps nebo pdf soubory pomoci ghostcriptu, nepriklad je prevadite do bitmapove podoby, ma nekdy vystup neprirozene kriklave barvy. Tehdy pomuze rici ghostsriptu, ze vstup je v barevnem prostoru CMYK, pridejte tuto volbu
    -dProcessColorModel=/DeviceCMYK
    
    Pokud pouzivate ghostscript ke generovani ps nebo pdf souboru, mohou vas zajimat take nasledujici volby
    -dEmbedAllFonts=true
    -dCompressPages=true
    -dUseFlateCompression=true
    
    Uvedene volby funguji prinejmensim v ghostscriptu verze gs7.04 nebo vyssich.
    -- OldFrog
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.