Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.
Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.
SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.
Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační
… více »PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují
… více »GIMP 3.2 byl oficiálně vydán (Mastodon, 𝕏). Přehled novinek v poznámkách k vydání.
Konec procházení přednáškových slidů :). Trochu upravená verze z http://blog.rompe.org/pdfgrep.
#!/bin/sh
# 2004-06-22 Ulf Rompe
if [[ $# -lt 2 ]]; then
echo 'Syntax: pdfgrep [grep options] <pattern> <file> [file ...]'
exit 1
fi
while [ ${1:0:1} == "-" ]; do
GREP_OPTIONS="$GREP_OPTIONS $1"
shift
done
pat="$1"
shift
if [[ $# -gt 1 ]]; then
GREP_OPTIONS="-H $GREP_OPTIONS"
fi
export GREP_OPTIONS
for file in "$@"; do
pdftotext -layout "$file" - 2>/dev/null | egrep --label="$file" "$pat"
done
Tiskni
Sdílej:
Kašle to na ně.
cut -c2 <<<x"$1" ?
-.
Hledají se přepínače pro grep (tj. znaky co začínají na -). V bash man stránce se <<< jmenuje "here string". Proč se před to dává xko? Zatím nevím, někdo to navrhl v komentáři (viz. zdroj), že prý to řeší problem s mezerami uvnitř názvů souborů, zatím sem nepřišel na to proč. :|
prý to řeší problem s mezerami uvnitř názvů souborů
To by mě zajímalo kde jsi to vyčetl, v diskuzi to vysvětlili jasně:
2. A small bug: if you pass a -e or -n as grep options, then the echo in the test of the first while loop thinks that it's an option for itself, for example echo -e outputs just a blank line.
Tj. pokud $1 bude obsahovat volby, které jsou dostupné i v echo, tak si je vezme za své právě echo. Příklad:
$ option="-n" $ echo $option $ echo x$option x-n
Pro udržení kontextu, bavíme se o:
while [ `echo x$1 | cut -c2` == "-" ]; do
U následujícího provedení má x jiný význam, pokud by $1 byl prázdný řetězec vypsal by skript chybové hlášení [: ==: unary operator expected, protože na levé straně porovnání by nebylo nic:
while [[ $(cut -c2 <<<x"$1") == "-" ]]; do
Ale když použijeme uvozovky, tak se můžeme zbavit x i tady (dávat do uvozovek i $1 je zbytečné):
while [ "$(cut -c2 <<<$1)" == "-" ]; do
Nebo to rovnou můžeme napsat bez zbytečného cut:
while [ ${1:0:1} == "-" ]; do
Oh. Upraveno. Omlouvám se. Přiznám se, že jsem ty komentáře jenom zhruba prolít.
if [[ $# -gt 1 ]]; then GREP_OPTIONS="-H $GREP_OPTIONS" fi... na ...
[ $# -gt 1 ] && REP_OPTIONS="-H $GREP_OPTIONS"No a ten posledný cyklus čo ide po súboroch neberie názvy s medzerami. Asi by bolo lepšie použiť:
ls ... | while read FILE; do