abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 16:38 | Komunita

Byly zveřejněny videozáznamy přednášek a workshopů z letošní konference OpenAlt konané 5. a 6. listopadu v Brně. K videozáznamům lze přistupovat ze stránky na SuperLectures nebo přes program konference, detaily o vybrané přednášce nebo workshopu a dále kliknutím na ikonku filmového pásu. Celkově bylo zpracováno 65 hodin z 89 přednášek a workshopů.

Ladislav Hagara | Komentářů: 0
dnes 11:30 | Komunita

Bylo oznámeno, že bude proveden bezpečnostní audit zdrojových kódů open source softwaru pro implementaci virtuálních privátních sítí OpenVPN. Audit provede Matthew D. Green (blog), uznávaný kryptolog a profesor na Univerzitě Johnse Hopkinse. Auditována bude verze 2.4 (aktuálně RC 1, stabilní verze je 2.3.14). Audit bude financován společností Private Internet Access [reddit].

Ladislav Hagara | Komentářů: 2
dnes 06:00 | Komunita

Na YouTube byl publikován Blender Institute Reel 2016, ani ne dvouminutový sestřih z filmů, které vznikly za posledních 10 let díky Blender Institutu. V institutu aktuálně pracují na novém filmu Agent 327. Dění kolem filmu lze sledovat na Blender Cloudu. Videoukázka Agenta 327 z června letošního roku na YouTube.

Ladislav Hagara | Komentářů: 0
dnes 01:02 | Zajímavý článek

Minulý týden byly vydány verze 1.2.3 a 1.1.7 webového poštovního klienta Roundcube. V oznámení o vydání bylo zmíněno řešení bezpečnostního problému nalezeného společností RIPS a souvisejícího s voláním funkce mail() v PHP. Tento týden byly zveřejněny podrobnosti. Útočník mohl pomocí speciálně připraveného emailu spustit na serveru libovolný příkaz. Stejně, jak je popsáno v článku Exploit PHP’s mail() to get remote code execution z roku 2014.

Ladislav Hagara | Komentářů: 1
včera 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 1
včera 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 5
7.12. 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
7.12. 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 2
7.12. 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 10
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 27
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 805 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Problém s načtením souborů

11.12.2012 16:35 AleX
Problém s načtením souborů
Přečteno: 324×
Ahoj, poradí někdo proč toto vypíše obsah souboru
echo "$(echo /root/gen)"
a tohle ne?
echo "$(</root/gen)"
Dík

Odpovědi

11.12.2012 16:52 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Máte to obráceně:
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
11.12.2012 17:16 AleX
Rozbalit Rozbalit vše Re: Problém s načtením souborů
jj, mám v tom trochu hokej, ale tohle
echo "$(</root/gen)"
mi obsah souboru stejně nevypíše, proč?
11.12.2012 21:14 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Problém s načtením souborů
To nevím. Podle 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.
11.12.2012 21:30 l4m4
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Na mezeře nezáleží a bash tuto konstrukci podporuje už velmi dlouho.

Nevypíše-li bash [echem interpretovaný] obsah souboru na stdout, tak bych čekal, že vypíše nějakou chybu. Pokud tedy soubor neobsahuje jen něco jako -n...
pavlix avatar 11.12.2012 21:44 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Nechápu vaše zmatení.

Příkaz </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.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
11.12.2012 22:25 l4m4
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Pěkné. A nyní si přečti v manuálu bashe, co dělá konstrukce $(<soubor) [*], a jdi klečet do kouta...

[*] Hint: je to tady: http://www.gnu.org/software/bash/manual/bashref.html#Command-Substitution
pavlix avatar 11.12.2012 22:29 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Klečím v koutě a modlím se, aby se l4m4 naučil číst :).
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 09:48 l4m4
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Na to už je pozdě.
pavlix avatar 12.12.2012 12:26 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Viz níže.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 01:19 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Teoreticky (...) byste měl pravdu, vypadá to jako by se spustil subshell, a na standardním vstupu mu byl naservírován soubor, a... kdo/co ten soubor vlastně vypíše? Asi nic.

V praxi ale Bash podporuje konstrukci $(< 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... :)
pavlix avatar 12.12.2012 12:23 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
A... nojo :). Je to tam. Otázka je, proč to dotyčnému nefunguje, a jestli je to bashovina, tak jestli skutečně používá bash.
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.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 10:30 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Problém s načtením souborů
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
When your hammer is C++, everything begins to look like a thumb.
pavlix avatar 12.12.2012 12:26 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Fajn, v pořádku, on sice odkazoval na command substitution, která v první řadě uvádí to, co jsem psal já. A neodkázal se na tu část, která popisuje ten speciální případ.

Teda jestli mám vůbec právo se hájit tím, že jeho odkaz na dokumentaci byl skutečně nepoužitelný.

Ale pokud vám to nějak pomůže, tak já si do toho kouta klidně kleknu. Jak dlouho tam mám zůstat?
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 12:38 kuka
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Je to asi tak paty radek v tom odkazu:-)

The command substitution $(cat file) can be replaced by the equivalent but faster $(< file)
pavlix avatar 12.12.2012 12:41 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Další, prosím.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 17:02 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Přehlédl jsi jednu řádku o special case v 3847 řádkách manuálu k Bashi, co naděláš, supi se slétají :-D
pavlix avatar 12.12.2012 17:12 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Nechť je jim dopřáno, konečně se dočkali :).
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 18:43 kuka
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Ne problem nebyl v tom, ze prehledl jednu radku v celem manualu, ale ze tvrdil, ze odkaz na dokumentaci byl "zcela nepouzitelny". Ackoliv to v odkazovanem textu bylo a cely ten odkaz mel jen par radku. Vzhledem k obvykle snaze pavlixe poukazovat na hloupost ostatnich je to samozrejme vitana prilezitost ho lehoulince pridusit:-) Ostatne ty sam ses na ten odkaz podival, nebo jen strilis od boku?
12.12.2012 19:03 l4m4
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Jelikož manuál bashe nemá id na každém jednotlivém odstavci, poskytl jsem nepřesnější možný link: Na příslušný oddíl textu. Má asi deset řádků (+-, podle fontů a okna prohlížeče).

Tudíž jsi mimo zhruba jen 380-krát...
12.12.2012 22:10 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Problém s načtením souborů
kuka, l4m4: cítím horký dech a závan křídel :-D 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
pavlix avatar 13.12.2012 17:04 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: Problém s načtením souborů
Pavlixi, musíš dooufat, že se na to přes svátky zapomene. Pokud ne, máš cejch navždy :D
Já těch cejchů už mám, ale jen tohoto si kobykly všimly :).
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
12.12.2012 10:32 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Problém s načtením souborů
jj, mám v tom trochu hokej, ale tohle
echo "$(</root/gen)"
mi obsah souboru stejně nevypíše, proč?
Jakou verzi bashe máte? 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ý.
When your hammer is C++, everything begins to look like a thumb.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.