V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Gitea (Wikipedie) byla vydána v nové verzi 1.26.0. Přehled novinek v příspěvku na blogu.
Ve středu 29. dubna 2026 se v pražské kanceláři SUSE v Karlíně uskuteční 7. Mobile Linux Hackday, komunitní setkání zaměřené na Linux na mobilních zařízeních, kernelový vývoj i uživatelský prostor. Akce proběhne od 10:00 do večerních hodin. Hackday je určen všem zájemcům o praktickou práci s Linuxem na telefonech. Zaměří se na vývoj aplikací v userspace, například bankovní aplikace, zpracování obrazu z kamery nebo práci s NFC, i na úpravy
… více »LilyPond (Wikipedie) , tj. multiplatformní svobodný software určený pro sazbu notových zápisů, byl vydán ve verzi 2.26.0. Přehled novinek v aktualizované dokumentaci.
Byla vydána nová verze 11.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 237 vývojářů. Provedeno bylo více než 2 500 commitů. Přehled úprav a nových vlastností v seznamu změn.
Společnost SpaceX amerického miliardáře Elona Muska oznámila, že si zajistila opci buď na akvizici startupu Cursor za 60 miliard dolarů (přes 1,2 bilionu Kč) do konce letošního roku, nebo na zaplacení deseti miliard dolarů za nové partnerství s touto firmou zabývající se generováním kódů. SpaceX se dále prosazuje na lukrativním trhu s vývojářskými nástroji pro umělou inteligenci (AI). Cursor, startup zabývající se prodejem modelů AI pro
… více »Díky AI modelu Claude Mythos Preview od společnost Anthropic bylo ve Firefoxu nalezeno a opraveno 271 zranitelností.
Byla vydána nová verze 2.54.0 distribuovaného systému správy verzí Git. Přispělo 137 vývojářů, z toho 66 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 13.0. Přehled novinek v aktualizované dokumentaci a na YouTube. Stalo se tak na konferenci GrafanaCON 2026.
Na YouTube proběhl Framework [ Next Gen ] Event 2026. Společnost Framework představila nový Framework Laptop 13 Pro, vylepšení Framework Laptopu 16 a OCuLink Dev Kit pro připojení vysoce výkonných periferií jako jsou eGPU a bezdrátovou klávesnici s integrovaným touchpadem Framework Wireless Touchpad Keyboard.
Byl vydán Mozilla Firefox 150.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 150 bude brzy k dispozici také na Flathubu a Snapcraftu.
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.
catem. Heredoc by také nemusel být špatný.
Pro 500 řádek by se asi vyplatilo je umístit do nějakého souboru a vypsat catem.
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: