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 04:55 | Nová verze

    Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.

    Ladislav Hagara | Komentářů: 1
    dnes 04:33 | Zajímavý projekt

    Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,

    … více »
    NUKE GAZA! 🎆 | Komentářů: 3
    včera 14:22 | IT novinky

    Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.

    Ladislav Hagara | Komentářů: 10
    včera 04:22 | Nová verze

    SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.

    Ladislav Hagara | Komentářů: 7
    včera 03:11 | Zajímavý projekt

    Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační

    … více »
    NUKE GAZA! 🎆 | Komentářů: 9
    15.3. 15:33 | Humor

    PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují

    … více »
    NUKE GAZA! 🎆 | Komentářů: 3
    15.3. 14:33 | Nová verze Ladislav Hagara | Komentářů: 1
    15.3. 12:33 | Zajímavý projekt

    FRANK OS je open-source operační systém pro mikrokontrolér RP2350 (s FRANK M2 board) postavený na FreeRTOS, který přetváří tento levný čip na plně funkční počítač s desktopovým uživatelským rozhraním ve stylu Windows 95 se správcem oken, terminálem, prohlížečem souborů a knihovnou aplikací, ovládaný PS/2 myší a klávesnicí, s DVI video výstupem. Otázkou zůstává, zda by 520 KB SRAM stačilo každému 😅.

    NUKE GAZA! 🎆 | Komentářů: 5
    14.3. 22:55 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa by měla dostat zhruba deset miliard dolarů (asi 214 miliard Kč) za zprostředkování dohody o převzetí kontroly nad aktivitami sociální sítě TikTok ve Spojených státech.

    Ladislav Hagara | Komentářů: 2
    14.3. 21:33 | Nová verze

    Projekt Debian aktualizoval obrazy stabilní větve „Trixie“ (13.4). Shrnuje opravy za poslední dva měsíce, 111 aktualizovaných balíčků a 67 bezpečnostních hlášení. Opravy se týkají mj. chyb v glibc nebo webovém serveru Apache.

    |🇵🇸 | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1096 hlasů
     Komentářů: 26, poslední 12.3. 08:56
    Rozcestník

    Dotaz: perl/bash konverzia rwx na octal

    10.10.2011 11:38 nicco | skóre: 7
    perl/bash konverzia rwx na octal
    Přečteno: 341×

    Ahoj,

    nenapisal uz niekto perl alebo bash skript na konverziu pristupovych prav z formatu -rxwrwxrwx? Neico som zacal, ale uz nedokazem rozumne zaimplementovat sgid/suid a sticky bit?

    Ide o Solaris10, tkaze nie je tam stat ani gnu find a teda napr toto nefunguje:

    $ perl -e'printf "%o\n", ( stat "/etc" )[ 2 ]'
    40755

    Najlepsi by bol perl/bash skript pokial mjozno bez dodatocnych modulov, len so zakladnymi prikazmi.

    Bud sa mi teda podari vylistovat prava na Solarise v osmickovom tvare a potom nepotrebujem konverziu, alebo musim napisat skritp

    Diky


    Řešení dotazu:


    Odpovědi

    10.10.2011 13:30 NN
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Nejak jsem nepochopil, ceho tim chces dosahnout, ale opravneni se nastavuje obdobne viz:

    http://snap.nlc.dcccd.edu/reference/sysadmin/julian/ch18/402-404.html

    NN
    10.10.2011 13:58 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal

    Ide o to, ze mam vystup z ls -al:

    -rwxrwxrwx /cesta/subor

    a chcem vytvorit pomocou skriptu podla toho vzoru: chmod 777 /cesta/subor, tda skonvertovat rwxrwxrwx na 777

    -rwxrwxrwx este nejako zvladnem naskriptovat, ala ked sa tam prida s/S/t/T a teda musim mat neico ako 2640, 4600, 1777,... tak to uz nedokazem.

    Inak samozrejeme viem, ako sa v unixe nastavuje sticky bit, len potrebujem konverziu z rwx na 777, pretoze ls ma jeden format a chmod na iny format.

    10.10.2011 14:41 smajl | skóre: 3
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    smajl@leila:~$ stat -c %a .bashrc 644 smajl@leila:~$ ls -l .bashrc -rw-r--r-- 1 smajl smajl 3116 May 9 09:50 .bashrc
    10.10.2011 14:42 smajl | skóre: 3
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    ospravedlnujem sa, takto to ma vyzerat spravne:
    smajl@leila:~$ stat -c %a .bashrc
    644
    smajl@leila:~$ ls -l .bashrc
    -rw-r--r-- 1 smajl smajl 3116 May  9 09:50 .bashrc
    
    10.10.2011 15:49 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Bohuzial stat sa na Solarise nenachadza, teda aspon na tom, ktory mam ja, ale diky.
    herne the hunter avatar 10.10.2011 15:00 herne the hunter | skóre: 10 | tor lara
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    haha, tak jsem zkusil oprášit svoje znalosti bashe (moc se to nepovedlo ;)) a vyplodil tuhle hrůzu:

    #!/bin/bash
    
    if [ "${#1}" -ne 10 ]; then
    	exit 0;
    fi
    
    declare -A perm
    perm["r"]=4
    perm["w"]=2
    perm["x"]=1
    perm["s"]=1
    perm["t"]=1
    perm["-"]=0
    perm["S"]=0
    perm["T"]=0
    
    res[0]=0
    res[1]=0
    res[2]=0
    res[3]=0
    
    for i in `seq 1 $((${#1} - 1))`; do
    	znak=${1:$i:1}
    	idx=$((1 + (($i - 1) / 3)))
    	res[$idx]=$((${res[$idx]} + ${perm[$znak]}))
    	if [ "${znak}" == "s" ] || [ "${znak}" == "S" ] || [ "$znak" == "T" ] || [ "${znak}" == "t" ]; then
    		res[0]=$((${res[0]}  + (1 << (3 - $idx))))
    	fi
    done
    
    echo ${res[0]}${res[1]}${res[2]}${res[3]}
    

    ale tak snad je důležitý, že to funguje, ne? :D (vstup to předpokládá ve tvaru ls -l soubor | awk '{print $1}')
    i am herne the hunter and you are a leaf driven by the wind.
    10.10.2011 15:48 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal

    Tak to je hodne dobre a funguje to s s/S/t/T !

    Diky moc

    (este keby sa mi podarilo to naportovat do perlu, tak to uplne super;-) )

    10.10.2011 16:06 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal

    V linuxe to fungovalo, ale na Solarise uz nie:

    bash-3.00$ bash convert_rwx.sh -rw-r-----

    convert_rwx.sh: line 7: declare: -A: invalid option

    declare: usage: declare [-afFirtx] [-p] [name[=value] ...]

    convert_rwx.sh: line 13: -: syntax error: operand expected (error token is "-")

    convert_rwx.sh: line 29: seq: command not found

    0000

    bash-3.00$

    10.10.2011 16:59 pm
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    my @A=stat $ARGV[0];die sprintf "%04o", $A[2] & 07777 ;
    10.10.2011 17:23 l4m4
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Asi tak. Konvertovat perlem výstup z ls, když se dají vlastnosti souboru zjistit snáz přímo v perlu, je zvrhlé.
    11.10.2011 10:21 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal

    Ano mate pravdu, lepsie je to zistip priamo cez stat, ako konvertovat:  
    find . -type f | perl -e ' while (<STDIN>) { chomp; printf "%s %4o\n", $_, (stat $_)[2] & 07777; }'
    ./file1 644
    ./file2 644
    ./file3 600

    10.10.2011 20:45 NN
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));printf("%0o",k);print}'
    
    One-liner, netstovano..

    NN
    pepe_ avatar 10.10.2011 21:11 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal

    Nebylo to tu uz ?

    #!/bin/bash
    ls -lhF $1 | while read DATA
    do
    case "${DATA:0:1}" in
    "-"|"d")
    PERM=$( echo "${DATA:1:9}" | sed 's/-/0/g;s/r/4/g;s/w/2/g;s/x/1/g' )
    P_US=$((${PERM:0:1}+${PERM:1:1}+${PERM:2:1}))
    P_GR=$((${PERM:3:1}+${PERM:4:1}+${PERM:5:1}))
    P_OT=$((${PERM:6:1}+${PERM:7:1}+${PERM:8:1}))
    DATA=$( echo "$DATA" | sed "s/${DATA:0:10}/${P_US}${P_GR}${P_OT}/" )
    echo "$DATA"
    ;;
    *)
    continue
    ;;
    esac
    done
    exit 0
    11.10.2011 10:30 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Moznosti je viacero, najlepsie je asi priamo cez perl/stat zistit co potrebujem a vyhnut sa konvertovaniu, ale kedze som povodne smeroval otazku na konverziu v perle/bashi, tak som oznacil toto riesenir ako spravne. Diky
    martin-ux avatar 10.10.2011 21:33 martin-ux | skóre: 18 | Bratislava
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    az teraz som si vsimol, ze si spravil thread aj v programatorskej casti. v tvojom prvom threade som ti pastol sposob ako to spravit v perle; ako vsak pozeram tak ti to uz navrhol aj tu niekto hore.
    ..when you do things right, people won't be sure you've done anything at all..
    11.10.2011 10:25 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Mal som 2 moznosti, zistit hexa prava priamo v Solarise, alebo konvertovat ich v perle/bashi. Rieseni je viac, ale asi najlepsie je to zistit uz v Solarise cez perl/stat a vyhnut sa zlozitemu konvertovaniu.
    10.10.2011 21:34 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    napr toto nefunguje:
    $ perl -e'printf "%o\n", ( stat "/etc" )[ 2 ]'
    40755
    Mně přijde, že to funguje přesně jak má.
    In Ada the typical infinite loop would normally be terminated by detonation.
    11.10.2011 10:23 nicco | skóre: 7
    Rozbalit Rozbalit vše Re: perl/bash konverzia rwx na octal
    Toto je moja chyba, hned som to zamietol, lebo som si neuvedomil, ze stat je (aj) funkcia perlu, muslel som, ze sa vola stat z OS, teda gnu stat, ktory na Solarise standardne nie je.

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.