AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.
Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).
Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.
Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.
O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).
Nová vývojová verze Wine 9.8 řeší mimo jiné chybu #3689 při instalaci Microsoft Office 97 nahlášenou v roce 2005.
Coppwr, tj. GUI nástroj pro nízkoúrovňové ovládání PipeWire, byl vydán v nové verzi 1.6.0. Zdrojové kódy jsou k dispozici na GitHubu. Instalovat lze také z Flathubu.
cat zdroj > cílPřes proměnnou je to trochu komplikovanější:
TEMP=`cat zdroj` echo -n "$TEMP" > cíl
var='-n -n -n' cat > nějaký_soubor <<<"$var"
To se rozbije pro binární soubory nebo třeba když v tom souboru bude napsáno "-n".Ano, lebo robi len to, co mu povies. ... Nie je problem spravit aj nacitanie binarneho suboru. Sprav tak, ze v premenne bude ukladane/nacitane zakodovane, napr. base64.
Soudě podle tohoto komentáře, myslím, že se snažíš uložit soubor do proměnné prostředí. (Aby se pak dal odtud znova přečíst zase ve stejném interaktivním shellu.)
To ale nemůžeš udělat skriptem spouštěným v samostatném shellu, protože shell interpretující skript nemůže nijak ovlivnit proměnné prostředí procesu, který ho spustil. Takže skript sice uvidí všechny proměnné, které jsi ve svém interaktivním shellu exportoval, ale nemůže je nijak změnit ani k nim přidat nové. Přesněji, všechny změny, které udělá, zůstanou jen v jeho adresním prostoru [pořád extrémně zjednodušeno] a nebudou mít žádný vliv na ten původní shell, který celý skript (interpretovaný druhým, neinteraktivním shellem) spustil.
Můžeš ale docílit něčeho podobného, když si skript zainlinuješ (pomocí . nějaký_skript.sh
). Takový skript se pak vykoná přímo v kontextu toho interaktivního shellu (bez spouštění odděleného procesu) a může tedy měnit jeho proměnné.
Ještě lepší je použít funkce. A nejlepší je dát je třeba do ~/.bashrc
, aby byly všude dostupné.
cp_file_var() { eval "$2"='"$(cat "$1")"' } cp_var_file() { cat > "$2" <<< "${!1}" }
Příklad použití:
cp_file_var /proc/cpuinfo cpuinfo_snapshot cp_var_file cpuinfo_snapshot /tmp/cpuinfo diff /{proc,tmp}/cpuinfo # Frekvence se můžou lišit. echo "$cpuinfo_snapshot" # Jo, fakt je to proměnná.
Asi bych ale něco takového nezkoušel na jiné soubory než textové.
tee
:
PROMENNA=`cat zdroj|tee cil`Kopíruje data ze
zdroj
e do cil
e a zapisuje do proměnné PROMENNA
(do obou míst ve "stejnou" chvíli, bez ukládání do proměnné před uložením na disk).
$ cat >file0 aaa bbb ccc ddd $ VAR=$(cat file0|tee file1) $ echo $VAR aaa bbb ccc ddd $ echo "$VAR" aaa bbb ccc ddd
Tiskni Sdílej: