Ubuntu pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).
Zástupci členských států EU se včera shodli na návrhu, který má bojovat proti šíření materiálů na internetu zobrazujících sexuální zneužívání dětí. Nařízení známé pod zkratkou CSAM a přezdívané chat control mělo množství kritiků a dlouho nebyla pro jeho schválení dostatečná podpora. Pro schválení byla potřeba kvalifikovaná většina a dánské předsednictví v Radě EU se snažilo dosáhnout kompromisu. Návrh nakonec po dlouhých týdnech
… více »Britské herní studio Facepunch stojící za počítačovými hrami Garry's Mod a Rust uvolnilo svůj herní engine s&box (Wikipedie) jako open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT. Herní engine s&box je postavený nad proprietárním herním enginem Source 2 od společnosti Valve.
Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.
Stejně jako GNOME i KDE Plasma končí s X11. KDE Plasma 6.8 poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.
Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »
Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.
Po AlmaLinuxu byl v nové stabilní verzi 10.1 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.
Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
echo "$(echo /root/gen)"a tohle ne?
echo "$(</root/gen)"Dík
echo "$(echo /root/gen)"obsah souboru nevypíše, protože příkaz
echo, dáte-li mu na příkazové řádce nějaký parametr, vypíše ten parametr (není-li to přepínač). Nesnaží se zjišťovat, zda to náhodou není soubor a dělat svévolně něco jako vypisování jeho obsahu (na to lze použít cat), kopírování (na to je cp) a podobně.
echo "$(</root/gen)"Tady už dáváte jak parametr obsah souboru (přesměrovaný na standardní vstup), takže tohle obsah souboru vypíše. Jednodušší by ale asi bylo prosté
cat /root/gen
echo "$(</root/gen)"mi obsah souboru stejně nevypíše, proč?
man bash je to rychlejší skoroekvivalent $(cat /root/gen), takže pokud vám jde varianta s cat a nejde varianta se standardním vstupem, pak nevím. Zkuste jiný stroj či jinou verzi Bash...? Nebo přidat mezeru mezi $(< /root/gen), nějaká verze by na to mohla být citlivá. Jinak nevím.
-n...
</cesta/k/soboru soubor nikdy nevypisoval. Je to prázný příkaz, jehož vstup je přesměrovaný ze souboru. Bash soubor otevře pro čtení a pak provede prázdný příkaz, tedy neudělá nic.
Konstrukce $(...) či `...` způsobí, že bash vezme příkaz, který v ní je, pustí ho, a jeho výstupem tuto konstrukci nahradí.
Takže výsledný příkaz echo $(</cesta/k/souboru) vede k tomu, že se spustí prázdný příkaz, ten nic neudělá a jeho prázdný výstup se použije jako vstup příkazu echo. Ten při prázdném vstupu vypíše pouze ukončení řádku.
$(<soubor) [*], a jdi klečet do kouta...
[*] Hint: je to tady: http://www.gnu.org/software/bash/manual/bashref.html#Command-Substitution
$(< soubor) jako rychlejší ekvivalent konstrukce $(cat soubor). Je to tedy něco jiného, než "konstrukce < soubor uzavřená v $()". Podle mne je to special case. Podobně konstrukce > soubor také může vypadat neškodně, nevipadá jako shrinker, ale... :)
Podle mne je to special case.Je to tak, máte pravdu.
Podobně konstrukce > soubor také může vypadat neškodně, nevipadá jako shrinker, ale... :)Ta je ale jasná a dělá přesně to, co > má dělat.
Takže výsledný příkaz echo $(</cesta/k/souboru) vede k tomu, že se spustí prázdný příkaz, ten nic neudělá a jeho prázdný výstup se použije jako vstup příkazu echo. Ten při prázdném vstupu vypíše pouze ukončení řádku.
Jak už psal l4m4, to není pravda. Navíc dokumentace bashe, kterou linkoval, výslovně uvádí
The command substitution $(cat file) can be replaced by the equivalent but faster $(< file)
Ostatně stačí to prostě vyzkoušet, u mě - bash-4.2 - to funguje. Příkaz echo "$(< /etc/hosts)" vypíše soubor /etc/hosts
The command substitution $(cat file) can be replaced by the equivalent but faster $(< file)
Ostatne ty sam ses na ten odkaz podival, nebo jen strilis od boku?
Byl to jen vtipek. Jsem si vědom toho a potvrzuji, že odkaz byl hodně povedený a sám jsem ještě předtím psal že "dle man bash je to skoroekvivalent..." což se podbízí k tomu, aby člověk nededukoval, ale ten manuál projel.
Pavlixi, musíš dooufat, že se na to přes svátky zapomene. Pokud ne, máš cejch navždy :D
Pavlixi, musíš dooufat, že se na to přes svátky zapomene. Pokud ne, máš cejch navždy :DJá těch cejchů už mám, ale jen tohoto si kobykly všimly :).
jj, mám v tom trochu hokej, ale tohleJakou verzi bashe máte?echo "$(</root/gen)"mi obsah souboru stejně nevypíše, proč?
echo ${BASH_VERSION}
Co dělá cat /root/gen, nebo echo $(cat /root/gen)? Tipoval bych na prastarou verzi bashe, nebo je ten soubor jednoduše prázdný.
Tiskni
Sdílej: