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:44 | IT novinky

    U příležitosti 30. výročí vydání počítačové hry Quake byla vydána nová epizoda s názvem Dawn of the Machine (Steam).

    Ladislav Hagara | Komentářů: 3
    včera 16:00 | Bezpečnostní upozornění

    Vládní CERT upozorňuje (𝕏) na sérii bezpečnostních záplat (CVSS 9.9) v produktech Cisco řešících kritické zranitelnosti umožňující obejití autentizace, eskalaci oprávnění, vzdálené spuštění kódu a odepření služby. Úspěšné zneužití může útočníkům umožnit získat neoprávněný přístup k dotčeným systémům, kompromitovat zařízení Cisco Catalyst SD-WAN a Cisco IOS XE, spustit libovolný kód, zpřístupnit citlivé informace nebo narušit dostupnost postižených systémů.

    Ladislav Hagara | Komentářů: 2
    včera 15:33 | IT novinky

    Soud v americkém státě Nové Mexiko ve čtvrtek nařídil internetové společnosti Meta Platforms zaplatit 567 milionů dolarů (téměř 12 miliard Kč) za újmy, které její platformy působí mladým lidem. S přihlédnutím k dřívějšímu verdiktu tak má společnost celkem zaplatit 942 milionů dolarů, což je malý zlomek jejího ročního výnosu, který loni činil 60 miliard dolarů. Čtvrteční verdikt firmě také nařizuje, aby změnila způsob, jakým její

    … více »
    Ladislav Hagara | Komentářů: 11
    včera 12:44 | Humor

    Mark Russinovich (CTO v Microsoft Azure) se na LinkedIn pochlubil svým projektem MS Paint Doom napsaným pomocí Claude. Hru Doom umožňuje hrát v programu Malování (Microsoft Paint). Malování funguje jako monitor. Herní engine (ViZDoom) běží na pozadí a každý vykreslený snímek hry vkládá automaticky přes schránku (clipboard) do Malování.

    Ladislav Hagara | Komentářů: 2
    6.8. 08:00 | IT novinky

    Platformy ChatGPT i Roblox by mohly být zařazeny na seznam mimořádně velkých on-line platforem nebo internetových vyhledávačů, na něž se vztahují zvláštní podmínky podle nařízení o digitálních službách (DSA). Vzhledem k tomu, že ChatGPT i Roblox oznámily počet uživatelů nad prahovou hodnotou DSA, je toto označení „rozhodně možné“ a mohlo by „přijít dříve či později“. On-line platformy a vyhledávače zařazené na seznamy DSA musejí

    … více »
    Ladislav Hagara | Komentářů: 11
    5.8. 17:00 | Zajímavý software

    Společnost Cloudflare představila Cloudflare OS (GitHub), tj. open source platformu navrženou pro integraci umělé inteligence (agentů) přímo do pracovních procesů organizací.

    Ladislav Hagara | Komentářů: 0
    5.8. 12:44 | Nová verze

    Byla vydána nová verze 5.13 svobodného multiplatformního softwaru pro konverzi a zpracování digitálních fotografií primárně ve formátů RAW RawTherapee (Wikipedie). Vedle zdrojových kódů je k dispozici také balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    4.8. 20:44 | Zajímavý článek

    Jean-Baptiste Kempf na svém blogu představil novou verzi 9.0 "Lei" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    4.8. 20:11 | Komunita

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost NVIDIA.

    Ladislav Hagara | Komentářů: 0
    4.8. 12:22 | Zajímavý software

    Edvard Rejthar na blogu zaměstnanců CZ.NIC představil svou aplikaci SlideRshow (GitHub). Funguje jako prohlížeč fotek, ale i jako jejich organizér a prezentátor. Neinstaluje se, běží přímo v prohlížeči. Bez serveru. Offline.

    Ladislav Hagara | Komentářů: 11
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2351 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    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: 444×

    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.