Byla vydána (𝕏) nová verze 2025.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.
Dánské ministerstvo pro digitální záležitosti má v plánu přejít na Linux a LibreOffice [It's FOSS News].
V úterý Google vydal Android 16. Zdrojové kódy jsou k dispozici na AOSP (Android Open Source Project). Chybí (zatím?) ale zdrojové kódy specifické pro telefony Pixel od Googlu. Projekty jako CalyxOS a GrapheneOS řeší, jak tyto telefony nadále podporovat. Nejistá je podpora budoucích Pixelů. Souvisí to s hrozícím rozdělením Googlu (Google, Chrome, Android)?
Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.101 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.101 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
V Brně na FIT VUT probíhá třídenní open source komunitní konference DevConf.CZ 2025. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Vyloučení technologií, které by mohly představovat bezpečnostní riziko pro stát, má umožnit zákon o kybernetické bezpečnosti, který včera Senát schválil spolu s novelami navazujících právních předpisů. Norma, kterou nyní dostane k podpisu prezident, počítá rovněž s prověřováním dodavatelů technologií pro stát. Normy mají nabýt účinnosti od třetího měsíce po jejich vyhlášení ve Sbírce zákonů.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.6.
Po Red Hat Enterprise Linuxu a AlmaLinuxu byl v nové stabilní verzi 10.0 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Bylo vydáno Eclipse IDE 2025-06 aneb Eclipse 4.36. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Americká filmová studia Walt Disney a Universal Pictures podala žalobu na provozovatele populárního generátoru obrázků pomocí umělé inteligence (AI) Midjourney. Zdůvodňují to údajným porušováním autorských práv. V žalobě podané u federálního soudu v Los Angeles označují firmu za „bezednou jámu plagiátorství“, neboť podle nich bez povolení bezostyšně kopíruje a šíří postavy z filmů jako Star Wars, Ledové království nebo Já, padouch, aniž by do nich investovala jediný cent.
echo "Toto uložím do souboru" > /tmp/test.txt pokud více textu, tak echo "Toto uložím do souboru" > /tmp/test.txt echo "Toto taky uložím do souboru" >> /tmp/test.txt echo "A toto taky uložím do souboru" >> /tmp/test.txtCo nevím je, jak uložit nějaká data do souboru když je toho třeba na 500 řádků, to musím napsat každý řádek zvlášť s použitím echa.../printf...? Poradí někdo? Dík
Řešení dotazu:
cat >soubor <<EOF text text ... EOF(b) použij exec
exec >souborToto je velmi pěkná a silná konstrukce v krátkých skiptech, ale jelikož ovlivňuje globálně stav shellu, tak není moc vhodná v situacích, kdy se má část skriptu/funkce chovat jako prostá funkce (neovliňující globální stav).
foo() { echo text echo text ... } foo >soubor
echo "standartni vystup" # zalohuj stdout exec 5>&1 # presmeruj stdout do soboru exec >out.txt echo "vystup do souboru" echo "standartni vystup" >&5 # obnov stdout exec 1>&5 echo "standartni vystup"
script my.out #ls ... exita vsetok output bude v
my.out
Asi nerozumiem, bo na to, aby vase c) platilo, tak by musel byt na to skript pripraveny. To znamena, ze by v nom muselo byt nieco, co berie v uvahu moznost, ze sa ako argument zada cesta k suboru, do ktoreho sa vystup samotneho skriptu zapise. Ale urcite takto nefunguje kazdy skript, vid :
#!/bin/bash data(){ cat <<_EOF skript: "$0" pracovny adresar: "$PWD" date: "$(date)" _EOF } echo "Viem o argumente: $1 , ale ma vobec nezaujima, takze to dam sem " data
patrik@thinkpad:~$ bash ./test.bash my.out Viem o argumente: my.out , ale ma vobec nezaujima, takze to dam sem skript: "./test.bash" pracovany adresar: "/home/patrik" date: "Mon Dec 10 16:51:18 GMT 2012"
Zadavatel dotazu sa snazi vytvorit vystup, ktory sa presmeruje do suboru.
Ak by ste ale napisal:
skript > my.out
tak mate pravdu v tom, ze to bude v subore zapisane a to funguje vzdy, no stale to nie je odpovedou na dane zadanie. Riesenie s here dokumentom je podla mojho nazoru najidealnejsie, pokial sa nechceme starat aj o distribuciu dalsich suborov ako len samotneho skriptu.
script
sluzi na jednu vec:
script -- make typescript of terminal sessionnajvhodnejsia odpoved na autorovu otazku je to a). z toho b) mi prislo vhodne spomenut /viacmenej na okraj/ aj to moje c). do shelloveho scriptu by som ho ale nepouzil, na to je vhodne standardne presmerovanie.
Dik za rozsirenie obzorov, som o tom ani netusil, ze nieco take existuje a v spojitosti s jazykom (pisanim) ako napr. "dame session a pod.", co sa dneska pouziva, je naozaj niekedy zlozite vediet alebo pochopit, co vlastne autor mal na mysli. Vy ste to nepouzil, len mi to tak v prvom momente prislo ( script == skript ale v skutocnosti vo vasom prispevku script != skript ). Takze moja nevedomost a dnesny sposob vyjadrovania urobili svoje. :)
script
sa zide hlavne pri generovani logov/dumpov z FW, konzol a pod.
data.txt
a v skripte sa ich zapísanie do súboru scrvkne na triviálne
cp /path/to/data.txt /tmp/test.txtalebo
cat /path/to/data.txt > /tmp/test.txtpričom neskôr je jednoduché pridať ich predspracovanie, napr.:
cat /pat/to/data.txt | grep -i ... | sed -e ... | cut -f ... | tr -d ... | sort -k ... > /tmp/test.txt[... a vyhrať dnešné kolo súťaže o najzbytočnejší
cat
, ja viem. cat >suborNapisat vsetky riadky (alebo vlozit/skopirovat) a na konci na novom riadku CTRL+D (teda koniec suboru/vstupu)
když je toho třeba na 500 řádků, to musím napsat každý řádek zvlášťNemusíš – klidně můžeš na prvním řádku otevřít uvozovky a ukončit je až na posledním. Akorát se ti nesmí vyskytovat uvnitř textu (tam je escapuješ jako \")
echo "toto je první řádek normálně pokračujeme dál tady nějaký text v \"uvozovkách\" poslední řádek" > /tmp/test.txtPřípadně místo uvozovek můžeš použít apostrofy – podle toho, čeho máš v textu míň – takhle jde krásně zapisovat třeba XML do BASH skriptů. Akorát pozor na $ v případě uvozovek, aby se to neinterpretovalo jako proměnné.
... Akorát se ti nesmí vyskytovat uvnitř textu (tam je escapuješ jako \") ... ... Akorát pozor na $ v případě uvozovek, ...Akurát, že je okolo toho veľa "akurát". V prípade 500 riadkov by fakt bolo na mieste oddeliť údaje od ich spracovania. Možno keby sme vedeli, aký problém vlastne riešime, mohli by sme radiť lepšie.
cat
em. Heredoc by také nemusel být špatný.
Pro 500 řádek by se asi vyplatilo je umístit do nějakého souboru a vypsat cat
em.
Takto?
<![CDATA[…]]>
v XML – když se člověku nechce escapovat speciální znaky a místo toho ohraničí konec textu nějakou speciální sekvencí. Ale zdaleka ne vždy je to potřeba. Proč to dělat složitě, když to jde jednoduše?
Když jazyk umožňuje mít řetězec v uvozovkách apostrofech na víc řádků, tak to přece není žádné prasení, ale využívání možností jazyka.
Proč by mělo být tohle:
cat <<"EEE" ahoj $1, jak to jde? EEE cat <<EEE ahoj $1, jak to jde? EEE read a <<EOF omfg omfg EOFsprávnější než tohle:
echo 'ahoj $1, jak to jde?'; echo "ahoj $1, jak to jde?"; a="omfg omfg";? Na používání "…" a '…' na více řádků nevidím nic špatného.
Proč to dělat složitě, když to jde jednoduše?S tím souhlasím, proto bych taky uvedené krátké příklady psal
echo -e "ahoj $1,\njak to jde?" echo -e 'ahoj $1,\njak to jde?' a=$'omfg\nomfg'aby se s nimi snáz pracovalo.
print nějaký\"html\"řádek print dalsi\"radek\" ....
echo "Toto uložím do souboru" > /tmp/test.txt echo "Toto taky uložím do souboru" >> /tmp/test.txt echo "A toto taky uložím do souboru" >> /tmp/test.txttak je nejjednodušším a nejpřímočařejším vylepšením jeho kódu to, že prostě uvozovky neukončí a normálně vkládá konce řádků, pokračuje dál a dál a nemusí je ukončovat a posílat do souboru jednotlivé řádky. Heredoc je samozřejmě taky dobré zmínit, ale v první řadě se hodí vědět, že BASH podporuje víceřádkový text v uvozovkách/apostrofech.
Tiskni
Sdílej: