Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře děti v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
Před 34 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Agent umělé inteligence vytvořil 'útočný' článek o Scottu Shambaughovi, dobrovolném správci knihovny matplotlib, poté, co vývojář odmítl agentem navrženou změnu kódu (pull request). 'Uražený' agent autonomně sepsal a publikoval na svém blogu článek, který přisuzuje Shambaughovi smyšlené motivace, egoismus a strach z AI coby konkurence.
Bylo vydáno Ubuntu 24.04.4 LTS, tj. čtvrté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
diff --brief -r a b
bash$ diff -r --brief a b Files a/a and b/a differ File a/b is a regular empty file while file b/b is a directory Only in b: c bash$ find b/b b/b b/b/g b/b/hTo že diff jen oznámí že to je adresář ale soubory v něm nevypíše je trochu zákeřné :(
md5sum nebo sha1sum. Hash se porovná mnohem rychleji než kompletní obsah souboru. S pomocí např. sortu se dají najít shodné soubory s různým názvem mezi tisícovkami jiných souborů během velmi krátké doby.
mp2=""
ls -S -- *.mp3 | while read; do
mp3="$REPLY"
if [[ -n "$mp2" ]]; then
size2="$(stat --format "%s" -- "$mp2")"
size3="$(stat --format "%s" -- "$mp3")"
if [[ "$size3" == "$size2" ]]; then
md5sum2="$(md5sum -- "$mp2" | cut -d\ -f 1)"
md5sum3="$(md5sum -- "$mp3" | cut -d\ -f 1)"
if [[ "$md5sum3" == "$md5sum2" ]]; then
echo "ln -s -- \"$mp2\" \"$mp3\""
rm -- "$mp3" && ln -s -- "$mp2" "$mp3"
continue
fi
fi
fi
mp2="$mp3"
done
Samozřejmě hodně záleží na účelu použití, poškozené (tedy jinak velké) soubory se stejným názvem by se hledaly zase jinak, že, ale princip je podobný.
md5sum třeba sha1sum nebo sha512sum.
Bez parametru pouze vyhledává duplicity, s parametrem -rm je i smaže.
#!/bin/sh
#
old=xxxxxxxxxxxxxxxxxxxxxxxxxx
oldn=xxxxxxxxxxxxxxxxxxxxxxxxxx
stav=0
find . -type f -iname "*" -exec md5sum '{}' ';' |
sort |
while read md5 nazev; do
if test "$old" = "$md5"; then
if test $stav -eq 0; then
echo "=== $oldn";
stav=1;
fi
if test "$1" = "-rm"; then
echo "rm $nazev"
rm "$nazev"
else
echo " $nazev"
fi
else
stav=0
fi
old="$md5"
oldn="$nazev"
done
rsync -rvcn a b, tj. nedělat nic ve skutečnosti, jen vypisovat co by udělal.
Tiskni
Sdílej: