Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.
Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.
Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].
Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).
Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.
Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.
Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.
Poslední měsíc byl plný zajímavých akcí, o kterých Vám bastlíři z projektu MacGyver mohou povědět, protože se na ně sami vydali. Kde všude byli, ptáte se? Objevili se na Installfestu, Arduino Day, Hackaday Europe a tajném srazu bastlířů z Twitteru. A z každé akce pro vás mají zajímavé poznatky.
… více »Mezinárodní nezisková organizace Women Who Code (WWCode, Wikipedie) založena v roce 2011 s cílem usnadnit ženám vstup do světa informačních technologií nečekaně skončila. Došly finance.
xxx;xx;xxx;xxx;2007-03-28;10:20:05 xxx;xx;xxx;xxx;2007-03-28;16:20:05 xxx;xx;xxx;xxx;2007-03-28;21:20:05 xxx;xx;xxx;xxx;2007-03-28;23:20:05 xxx;xx;xxx;xxx;2007-03-29;00:20:05 xxx;xx;xxx;xxx;2007-03-29;06:20:05 xxx;xx;xxx;xxx;2007-03-29;11:20:05 xxx;xx;xxx;xxx;2007-03-29;14:20:05 xxx;xx;xxx;xxx;2007-03-29;20:20:05 xxx;xx;xxx;xxx;2007-03-30;10:20:05 ------------ ------------ Mám např. tyto proměnné: Datum_start=2007-03-28 Hodina_start=18:02:10 Datum stop=2007-03-29 Hodina_stop=16:21:55Potřeboval bych vypsat všechny řádky od Datum_start -Hodina_start do Datum stop - Hodina_stop. Umím vypsat řádky jen podle datumu: sed -n "/$Datum_start/,/$Datum_stop/ p" Zkoušel jsem: sed -n "/$Datum_start [$Hodina_start]/,/$Datum_stop/ p", ale toto mi nefunguje. Nevím, jak přidat tu druhou proměnnou, aby to vypsalo řádky od $Hodina_start.
user@stroj:~$ awk -F\; '{if ($5>="2007-03-28" && $5<="2007-03-28") print $0}' test.txt xxx;xx;xxx;xxx;2007-03-28;10:20:05 xxx;xx;xxx;xxx;2007-03-28;16:20:05 xxx;xx;xxx;xxx;2007-03-28;21:20:05 xxx;xx;xxx;xxx;2007-03-28;23:20:05A podmínky si lze nakombinovat dle libosti..
sed -n "/$Datum_start;$Hodina_start/,/$Datum_stop;&Hodina_stop/p"
Překlep sed -n "/$Datum_start;$Hodina_start/,/$Datum_stop;$Hodina_stop/p"
awk -F\ -v DSTART=$Datum_start -v DSTOP=$Datum_stop '{}'
v awk budou promenne Datum_start mapovana na DSTART
user@stroj:~$ awk -F\; -v datstart=$Datum_start -v datstop=$Datum_stop \ '{if ($5>=datstart && $5<=datstop) print $0}' test.txtNeví někdo, jak tam ještě přidat ty hodiny?
awk -F\; -v datstart=$datum_start -v datstop=$datum_stop -v hodstart=$hodina_start -v hodstop=$hodina_stop '$5 == datstart && $6 == hodstart,$5 == datstop && $6 == hodstop{print}' sample.txt
Mám např. tyto proměnné: datum_start=2007-03-28 hodina_start=18:02:10 datum_stop=2007-03-29 hodina_stop=16:21:55
awk -F\; -v datstart=$datum_start -v datstop=$datum_stop -v hodstart=$hodina_start -v hodstop=$hodina_stop '$5 == datstart && $6 == hodstart,$5 == datstop && $6 == hodstop{print}' test.txtNezobrazí nic.
user@neuron-ai ~ $ cat test.txt 1 xxx;xx;xxx;xxx;2007-03-28;10:20:05 2 xxx;xx;xxx;xxx;2007-03-28;16:20:05 3 xxx;xx;xxx;xxx;2007-03-28;21:20:05 4 xxx;xx;xxx;xxx;2007-03-28;23:20:05 5 xxx;xx;xxx;xxx;2007-03-29;00:20:05 6 xxx;xx;xxx;xxx;2007-03-29;06:20:05 7 xxx;xx;xxx;xxx;2007-03-29;11:20:05 8 xxx;xx;xxx;xxx;2007-03-29;14:20:05 9 xxx;xx;xxx;xxx;2007-03-29;20:20:05 10 xxx;xx;xxx;xxx;2007-03-30;10:20:05 user@neuron-ai ~ $ cat oddo #!/bin/bash datum_start=2007-03-28 hodina_start=21:20:05 datum_stop=2007-03-29 hodina_stop=20:20:05 awk -F\; -v datstart=$datum_start -v datstop=$datum_stop \ -v hodstart=$hodina_start -v hodstop=$hodina_stop '$5 == datstart && \ $6 == hodstart,$5 == datstop && $6 == hodstop{print}' test.txt user@neuron-ai ~ $ ./oddo 3 xxx;xx;xxx;xxx;2007-03-28;21:20:05 4 xxx;xx;xxx;xxx;2007-03-28;23:20:05 5 xxx;xx;xxx;xxx;2007-03-29;00:20:05 6 xxx;xx;xxx;xxx;2007-03-29;06:20:05 7 xxx;xx;xxx;xxx;2007-03-29;11:20:05 8 xxx;xx;xxx;xxx;2007-03-29;14:20:05 9 xxx;xx;xxx;xxx;2007-03-29;20:20:05Problem je v zle naplnenych premennych. Ak tvoj test.txt obsahuje to iste co moj, tak je jasne, ze ti to nepojde, pretoze sa nenajde dany cas (hodina_start). "Program" samozrejme hlada presny vyskyt retazca. Teda datum/cas musi presne sediet s nejakym datumom/casom v test.txt.
awk -F\; -v datstart=$datum_start -v datstop=$datum_stop -v hodstart=$hodina_start -v hodstop=$hodina_stop '$5 >= datstart && $6 >= hodstart,$5 <= datstop && $6 <= hodstop{print}' test.txt
xxx;xx;xxx;xxx;2007-03-28;10:20:05 xxx;xx;xxx;xxx;2007-03-28;16:20:05 xxx;xx;xxx;xxx;2007-03-28;21:20:05 xxx;xx;xxx;xxx;2007-03-28;23:20:05 xxx;xx;xxx;xxx;2007-03-29;00:20:05 xxx;xx;xxx;xxx;2007-03-29;06:20:05 xxx;xx;xxx;xxx;2007-03-29;11:20:05 xxx;xx;xxx;xxx;2007-03-29;14:20:05 xxx;xx;xxx;xxx;2007-03-29;20:20:05 xxx;xx;xxx;xxx;2007-03-30;10:20:05 ------------ ------------ Mám např. tyto proměnné: Datum_start=2007-03-28 Hodina_start=18:02:10 Datum stop=2007-03-29 Hodina_stop=16:21:55Chci vypsat řádky od Datum_start - Hodina_start do Datum stop - Hodina_stop. Problém je, že se Hodina_start a Hodina_stop nemusí přesně shodovat s údaji v souboru test.txt. Nakonec jsem přišel na toto řešení:
#prevede datum a cas v souboru test.txt (napr.2007-03-28;18:02:10)\ #na cislo (napr. 20070328180210) a ulozi do souboru test1.txt cat test.txt|sed '/-/s///g;/:/s///g;/;/s///5'>test1.txt datumstart=2007-03-28 hodinastart=18:02:10 #vysledna promenna start bude mit format 20070328180210 start=$(echo $datumstart$hodinastart|sed '/-/s///g;/:/s///g;/;/s///5') datumstop=2007-03-29 hodinastop=16:21:55 #vysledna promenna stop bude mit format 20070329162155 stop=$(echo $datumstop$hodinastop|sed '/-/s///g;/:/s///g;/;/s///5') #vypise radky od 2007-03-28 16:20:05 do 2007-03-29 16:20:05 awk -F\; -v datstart=$start -v datstop=$stop\ '{if ($5>=datstart && $5<=datstop) print $0}' test1.txtPokud se někomu nelíbí ten cat, tak je to proto, že mi to tyto stránky nechtěli vzít (nepovolený text test.txt). A jestli má někdo jednodušší řešení, sem s tím. By
test1.txt
:
sed 's/[-:]//g;/;/s///5' test.txt > test1.txt
start
(a podobně i stop
) :
start=${datumstart//-/}${hodinastart//:/}
Tiskni Sdílej: