I letos vyšla řada ajťáckých adventních kalendářů: Advent of Code 2025, Perl Advent Calendar 2025, CSS Advent Calendar 2025, Advent of A11Y 2025, Advent of AI Security 2025, Advent of Agents (in Google) 2025, Advent of Svelte 2025, …
Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.
Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.
Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.
Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).
Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.
Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.
Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.
Glen MacArthur vydal AV Linux (AVL) a MX Moksha (MXM) 25. S linuxovým jádrem Liquorix. AV Linux (Wikipedie) je linuxová distribuce optimalizována pro tvůrce audio a video obsahu. Nejnovější AV Linux vychází z MX Linuxu 25 a Debianu 13 Trixie. AV Linux přichází s desktopovým prostředím Enlightenment 0.27.1 a MX Moksha s prostředím Moksha 0.4.1 (fork Enlightenmentu).
Mám několik souborů ve formátu *.csv.
Takto se mi soubory zobrazí v OpenOffice - Calc:
Prvni_soubor.csv: Nějaký_text - hlavička data1 data2 datan 1.1.2006 data1 data2 datan 2.1.2006 data1 data2 datan 3.1.2006 data1 data2 datan 4.1.2006 data1 data2 datan 5.1.2006 Druhy_soubor.csv: Nějaký_text - hlavička data1 data2 datan 3.1.2006 data1 data2 datan 4.1.2006 data1 data2 datan 5.1.2006 data1 data2 datan 6.1.2006 data1 data2 datan 7.1.2006 Treti_soubor.csv: Nějaký_text - hlavička data1 data2 datan 4.1.2006 data1 data2 datan 5.1.2006 data1 data2 datan 6.1.2006 data1 data2 datan 7.1.2006 data1 data2 datan 8.1.2006 data1 data2 datan 9.1.2006 data1 data2 datan 10.1.2006 Potřebuji, aby mi vypadlo: Nějaký_text - hlavička data1 data2 datan 1.1.2006 data1 data2 datan 2.1.2006 data1 data2 datan 3.1.2006 data1 data2 datan 4.1.2006 data1 data2 datan 5.1.2006 data1 data2 datan 6.1.2006 data1 data2 datan 7.1.2006 data1 data2 datan 8.1.2006 data1 data2 datan 9.1.2006 data1 data2 datan 10.1.2006Jinak musím otevřít všechny soubory v Calcu, porovnat, kopírovat, vložit atd. atd.atd...
Poradil by mi někdo jak na to, popř. jaký příkaz na to použít?
Berte to spíše jako návod, kudy se ubírat, než přesné řešení Vašeho problému:
echo "title1\ttitle2\ttitle3\tdate" >union.csv
sed -e 1d *_soubor.csv |sort |uniq >> union.csv
9.1.2006převést na trojici
(2006, 1, 9)Pak to teprve lze použít jako klíč pro sort(). Tady je ten program:
#!/usr/bin/env python
import sys, os, fileinput, re
data = {}
regexp = re.compile('^.*\s+(\d+)\.(\d+).(\d{4})\s+$')
for line in fileinput.input():
if fileinput.isfirstline():
hlavicka = line
try:
dmy = regexp.search(line).groups()
key = map(int, dmy)
key.reverse()
key = tuple(key)
data[key] = line
except AttributeError:
pass
keys = data.keys()
keys.sort()
sys.stdout.write(hlavicka)
for key in keys:
sys.stdout.write(data[key])
Když se pustí s parametry
Prvni_soubor.csv Druhy_soubor.csv Treti_soubor.csvtak vypíše tohle:
Nějaký_text - hlavička data1 data2 datan 1.1.2006 data1 data2 datan 2.1.2006 data1 data2 datan 3.1.2006 data1 data2 datan 4.1.2006 data1 data2 datan 5.1.2006 data1 data2 datan 6.1.2006 data1 data2 datan 7.1.2006 data1 data2 datan 8.1.2006 data1 data2 datan 9.1.2006 data1 data2 datan 10.1.2006Nevím, která hlavička tam patří, tak jsem ji vzal z posledního souboru.
data1;data2;datan;2006-05-28 18:20:10
data1;data2;datan;2006-05-28 18:20:10
tail +2 Prvni_soubor.csv > data tail +2 Druhy_soubor.csv >> data tail +2 Treti_soubor.csv >> data echo "Nějaký_text - hlavička" > Vysledny_soubor.csv sort -t\; -gk4,4 data >> Vysledny_soubor.csv
cat *.csv >spojeno.csv
cat spojeno.csv|sort -n -u -t- -k1,1 >trideno_dle_datumu
Funguje to, ale u toho -t mi nefunguje parametr středník, který tam měl být původně.
Děkuji všem a hlavně prvnímu v této diskuzi, co mi odpověděl a navedl správným směrem.
problém je v tom,že středník je ostrý znak shellu pro oddělování příkazů, které jsou na jednom řádku. Řešení je popsáno v příspěveku od neznámého xxl.
Ještě si zkontrolujte, zda vám hlavičky neskončily na konci výsledného souboru (|tail). Řešením by pak bylo použít místo cat *.csv ,něco jako sed -s -e 1d *.csv
Hlavičky mi vychází dobře, ale ten příkaz si aspoň zkusím.
Tiskni
Sdílej: