Byla vydána nová verze 25.12.6 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Opravena je řada zranitelností v základních síťových službách, které jsou ve výchozím nastavení aktivní a které lze zneužít na dálku. Důrazně je doporučena aktualizace.
Český projekt mapSTL.com promění vybrané místo na světě ve 3D mapu pro tisk, včetně měst, kopců a hor. Vytištěnou mapu můžete také pověsit na zeď jako obraz. STL i barevný 3MF stáhnete zdarma a bez registrace. Vyzkoušejte své oblíbené místo a podělte se o zpětnou vazbu.
Byl zveřejněn průběžně aktualizovaný program konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Konference proběhne o víkendu 7. a 8. listopadu v prostorách FIT VUT v Brně. Vstup je zdarma.
Po 9 týdnech vývoje od vydání Linuxu 7.2 oznámil Linus Torvalds vydání Linuxu 7.3. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).
Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.
O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.
#! /bin/bash
input1="$1"
input2="$2"
while read line
do
if grep -e "$line" "$input2" &>/dev/null
then
echo "..." >/dev/null
else
sed -i "s#$line#!$line#g" "$input1" "$input2"
fi
done <"$input1"
while read line
do
if grep -e "$line" "$input1" &>/dev/null
then
echo "..." >/dev/null
else
sed -i "s#$line#!$line#g" "$input2" "$input1"
fi
done <"$input2"
Jenze takovych souboru, potrebuju naraz zpracovat stovky. Dejme tomu, ze mam skript v adresari, kde jsou jenom ty .txt soubory. Chtel bych skript spustit tak, aby si vzal prvni dva soubory, zpracoval je, pak si vzal dalsi dva, dalsi dva atd. az by zpracoval o dvojicich vsechny soubory z adresare.
SOubory jsou pojemnovany takto:
01.txt.identifikacnicislo, 01.txt.jineidentifikacnicislo, 02.txt.identifikacnicislo, 03.txt.ID ...Budu rad za jakoukoliv pomoc. Diky,
Řešení dotazu:
ls -1 | sort -n | head -2
ale, v praxi to bude vyzerať inak.
sort $input1 $input1 $input2 | uniq -u >only2Následně s klidem používáš řádky coby regulární výrazy. To samozřejmě nebude dělat to, co má, když budou obsahovat znaky, které mají v regexpu speciální význam, je zapotřebí je oescapovat. Přitom se rovnou mohou upravit na regulární výrazy pro úpravu input1
sed -i 's#[...]#\\\0#g;s#.*#s/^\0$/!\\0/#' only2
^^^ sem přijde seznam těch speciálních znaků
A pak se už akorát input1 upraví pomocí only2
sed -i -f only2 $input1Tvůj skript provádí vždy modifikaci input1 i input2, ale když input2 ten řádek neobsahuje, tak není co modifikovat a toto je reundantní -- pokud jsem pochopil správně, co to má dělat, možná by nebylo na škodu to popsat i slovně. Analogicky křížem. V tomto ohledu by mi přišlo přirozenější nejdřív vygenerovat skripty v sedu only2 a only1, pak je teprve použít na příslušné soubory. Ale možná úloha vyžaduje aby výsledek zpracování závisel na tom, co s křížovým souborem provedlo v prním kroku... Opět by to vyjasnil slovní popis.
sort $input1 $input1 $input2 | uniq -u >only2vyresil muj problem. Nijak nevidim, jak by si tento prikaz bral z adresare postupne dva a dva soubory za sebou atakdale az by projel cely adresar...Nebo mi neco unika.. nejsem v bashi zbehly. V promennych input1 a input2 jsou preci jmena dvou soboru, ktere skriptu zadam:
./compare.sh soubor1 soubor2Ale ty jmena souboru mu zadam ja rucne na vstupu z commandlajny. A ja potrebuju to zadavani zautomatizovat tak, jak jsem popsal vyse. Ja bych potreboval asi nejaky regexp, ktery by skriptu jako parametry postupne prirazoval prvni dva soubory z adresare, pak dalsi dva soubory atd. rozumis. Jinak v souborech nejsou redundantni radky (to je osetrene jinym skriptem uz). Cili na vstupu se predpokladaji dva txt soubory, na stejnych radcich maji stejne vety a ty se porovnavaji, resp se hledaji preklepy. pokud se njde nesrovnalost, skript v obou souborech oznaci zacatek prislusneho radku vykricnikem. Tim oznaci ze vetu nejsou stejne.
compare.sh použít diff?
#!/bin/sh while test "$#" -gt 0; do diff "$1" "$2" shift 2 done
#!/bin/sh while test "$#" -gt 0; do compare.sh "$1" "$2" shift 2 doneJinak
compare.sh si můžeš nadefinovat i jako funkci. Tím se to dost urychlí.
Tiskni
Sdílej: