Byla vydána nová verze 1.26 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
CrossOver, komerční produkt založený na Wine, byl vydán ve verzi 26. Přehled novinek v ChangeLogu. CrossOver 26 vychází z Wine 11.0, D3DMetal 3.0, DXMT 0.72, Wine Mono 10.4.1 a vkd3d 1.18. Do 17. února lze koupit CrossOver+ se slevou 26 %.
KiCad je nově k dispozici také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit [Mastodon, 𝕏].
Šenčenská firma Seeed Studio představila projekt levného robotického ramena reBot Arm B601, primárně coby pomůcky pro studenty a výzkumníky. Paže má 6 stupňů volnosti, dosah 650 mm a nosnost 1,5 kilogramu, podporované platformy mají být ROS1, ROS2, LeRobot, Pinocchio a Isaac Sim, krom toho bude k dispozici vlastní SDK napsané v Pythonu. Kompletní seznam součástek, videonávody a nejspíš i cena budou zveřejněny až koncem tohoto měsíce.
… více »Byla vydána nová verze 36.0, tj. první stabilní verze nové řady 36, svobodného multimediálního centra MythTV (Wikipedie). Přehled novinek a vylepšení v poznámkách k vydání.
Byl vydán LineageOS 23.2 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu.
Od března budou mít uživatelé Discordu bez ověření věku pouze minimální práva vhodná pro teenagery.
Evropská komise (EK) předběžně shledala čínskou sociální síť pro sdílení krátkých videí TikTok návykovým designem v rozporu s unijním nařízením o digitálních službách (DSA). Komise, která je exekutivním orgánem Evropské unie a má rozsáhlé pravomoci, o tom informovala v tiskovém sdělení. TikTok v reakci uvedl, že EK o platformě vykreslila podle něj zcela nepravdivý obraz, a proto se bude bránit.… více »
Offpunk byl vydán ve verzi 3.0. Jedná se o webový prohlížeč běžící v terminálu a podporující také protokoly Gemini, Gopher a RSS. Přibyl nástroj xkcdpunk pro zobrazení XKCD v terminálu.
Promethee je projekt, který implementuje UEFI (Unified Extensible Firmware Interface) bindingy pro JavaScript. Z bootovacího média načítá a spouští soubor 'script.js', který může používat UEFI služby. Cílem je vytvořit zavaděč, který lze přizpůsobit pomocí HTML/CSS/JS. Repozitář se zdrojovými kódy je na Codebergu.
find zaloha-etc* -mtime +2 -print0 | xargs -0 rm -f. Kolikrat se ale stane, ze mi ty zalohy starsi nesmaze (pusteno cronem pokazde ve stejny cas). Kdyz to ale pustim rucne (tj. v jakykoliv jiny cas), tak se stare smazou a je vse OK. Nekde jsem tady cetl, ze to muze byt opozdenym koncem zalohy a hned to nesplni podminku casu. Jak ale mazat, aby koukal jen na datum a ne na cas? (jen doplnim, ze zalohy neprovadim kolem pulnoci)
find -name 'zaloha-etc*' -mtime....?
-daystart -mtime 3
Nemuzu to ted vyzkouset, protoze to dela fakt jen nekdy a v Cronu ve stejny cas...
, která vychází z man. Já bych to ale neřešil, stejně se smažou, pouze o den později
Measure times from the beginning of today rather than from 24 hours ago. So, to list the regular files in your home directory that were modified yesterday, do find ~/ -daystart -type f -mtime 1
a jeste mi do mailu prijde info, ze zaloha nebyla provedena.. i kdyz byla, ale stara se nesmazala..
#!/usr/bin/env bash
# promenne
CIL="/usr/zaloha"
ZDROJ="/etc"
PREFIX="etc_"
POSTFIX="`date +%d%m%y`.tar.bz2"
NAZEV=${PREFIX}${POSTFIX}
# vyzalohuje adresar $ZDROJ
tar -cjf ${CIL}/${NAZEV} "$ZDROJ" 2>/dev/null &&
# upravi prava zalohy
chmod 640 ${CIL}/${PREFIX}* &&
# nalezne a smaze zalohy starsi xx dni
find ${CIL}/${PREFIX}* -mtime +2 -print0 | xargs -0 rm -f
# synchronizuje s DVD-RAM
rsync -av --delete /usr/zaloha/ /media/dvd-ram/
# zasle informacni e-mail a zapise stav do logu
if [[ `echo $?` -eq 0 ]]; then
echo -e "`date` Zaloha "$ZDROJ" byla provedena." >> /var/log/zaloha.log
mail -s "zaloha "$ZDROJ"" email@example.net <<-MESSAGE
Dobry den,
Zaloha "$ZDROJ" byla provedena v `date +%H:%M` `date +%d.%m.%Y`
a je ulozena na serveru v "$CIL/$NAZEV"
Vas zalozni server :)
MESSAGE
else
echo -e "`date` Zaloha "$ZDROJ" SKONCILA CHYBOU!" >> /var/log/zaloha.log
mail -s "zaloha "$ZDROJ"" email@example.net <<-MESSAGE
Dobry den,
Zaloha "$ZDROJ" NEBYLA PROVEDENA v `date +%H:%M` `date +%d.%m.%Y`.
Vas zalozni server :(
MESSAGE
fi
#end
jinak mam tehle scriptu vic (na jine adresare) a jediny problem mi dela ten /etc ... zajimavy, scripty jsou identicky, jen menim promenne...
find ${CIL} -name "${PREFIX}*" -mtime +2 ...
# Delete older than last 7 backups (not 7 days)
ls -1t $DESTINATION | grep ^prefix | tail -n +8 | xargs rm
server:/usr# ls -1t /usr/zaloha | grep ^var_www_ | tail -n +4 var_www_150608.tar.bz2 server:/usr# ls -1t /usr/zaloha | grep ^var_www_ | tail -n +4 | xargs rm rm: cannot remove `var_www_150608.tar.bz2': není souborem ani adresářem
/usr/zaloha, jak to osetrit?
ls nevypisuje absolutní cestu.
Jako nejjednodušší řešení jsem použil to, že se před tím uvedeným příkazem na odstranění záloh přesunu do patřičného adresáře: cd $DESTINATION
Další možností by bylo doplnit ještě příkaz, který zyčátek každého řádku výstupu z ls doplní o ${DESTINATION}/. Napadá mě ošklivé řešení s awk, ale určitě by na to bylo lepší použít nějaký jiný příkaz:
ls -1t $DESTINATION | grep ^prefix | tail -n +8 | awk '{ "/usr/zaloha/" $0 }' | xargs rm
Místo /usr/zaloha/ by tam mělo být obecnější ${DESTINATION}, ale nepřišel jsem na to, jak escapovat ty uvozovky, aby došlo k expanzi proměnné.
var="ahoj"
gawk -v var2="$var" 'BEGIN {print var2}'
awk mi ve složených závorkách vypadlo print.
Takže by to mohlo být nějak takhle:
ls -1t "$DESTINATION" | grep ^prefix | tail -n +8 | awk -v dir="$DESTINATION" '{ print $dir "/" $0 }' | xargs rm
$dir má být jen dir, bez $.
ls -1t "$DESTINATION" | grep ^prefix | tail -n +8 | awk -v dir="$DESTINATION" '{ print dir "/" $0 }' | xargs rm
rsync, takže zde bych hledal možné problémy. Nebo na začátek scriptu přidej set -x a vyhodnocování si pak můžeš prohlédnout v mailu.
if [[ `echo $?` -eq 0 ]] je překombinované, použijte if [[ $? -eq 0 ]].
2>/dev/null. Takhle přicházíš právě o ten chybový výstup, kde tar možná říká, proč skončil neúspěsně.
Tiskni
Sdílej: