Programovací jazyk JavaScript (Wikipedie) dnes slaví 30 let od svého oficiálního představení 4. prosince 1995.
Byly zveřejněny informace o kritické zranitelnosti CVE-2025-55182 s CVSS 10.0 v React Server Components. Zranitelnost je opravena v Reactu 19.0.1, 19.1.2 a 19.2.1.
Bylo rozhodnuto, že nejnovější Linux 6.18 je jádrem s prodlouženou upstream podporou (LTS). Ta je aktuálně plánována do prosince 2027. LTS jader je aktuálně šest: 5.10, 5.15, 6.1, 6.6, 6.12 a 6.18.
Byla vydána nová stabilní verze 3.23.0, tj. první z nové řady 3.23, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Byla vydána verze 6.0 webového aplikačního frameworku napsaného v Pythonu Django (Wikipedie). Přehled novinek v poznámkách k vydání.
Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).
Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.
Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).
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:
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.
smajl@leila:~$ stat -c %a .bashrc
644
smajl@leila:~$ ls -l .bashrc
-rw-r--r-- 1 smajl smajl 3116 May 9 09:50 .bashrc
smajl@leila:~$ stat -c %a .bashrc 644 smajl@leila:~$ ls -l .bashrc -rw-r--r-- 1 smajl smajl 3116 May 9 09:50 .bashrc
#!/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}')
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
)
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$
my @A=stat $ARGV[0];die sprintf "%04o", $A[2] & 07777 ;
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
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
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
napr toto nefunguje:Mně přijde, že to funguje přesně jak má.$ perl -e'printf "%o\n", ( stat "/etc" )[ 2 ]' 40755
Tiskni
Sdílej: