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í
×
včera 22:22 | Komunita

Společnost Purism představila kryptografický token Librem Key. Koupit jej lze za 59 dolarů. Token byl vyvinut ve spolupráci se společností Nitrokey a poskytuje jak OpenPGP čipovou kartu, tak zabezpečení bootování notebooků Librem a také dalších notebooků s open source firmwarem Heads.

Ladislav Hagara | Komentářů: 0
včera 20:33 | Nová verze

Společnost NVIDIA oficiálně vydala verzi 10.0 toolkitu CUDA (Wikipedie) umožňujícího vývoj aplikací běžících na jejich grafických kartách. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
včera 20:00 | Upozornění

Příspěvek Jak přežít plánovanou údržbu DNS na blogu zaměstnanců CZ.NIC upozorňuje na historicky poprvé podepsání DNS root zóny novým klíčem dne 11. října 2018 v 18:00. Software, který nebude po tomto okamžiku obsahovat nový DNSSEC root klíč, nebude schopen resolvovat žádná data. Druhým důležitým datem je 1. února 2019, kdy významní výrobci DNS softwaru, také historicky poprvé, přestanou podporovat servery, které porušují DNS standard

… více »
Ladislav Hagara | Komentářů: 5
včera 15:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 156. brněnský sraz, který proběhne v pátek 21. září od 18:00 v restauraci Na Purkyňce na adrese Purkyňova 80.

Ladislav Hagara | Komentářů: 0
včera 13:22 | Nová verze

Alan Griffiths z Canonicalu oznámil vydání verze 1.0.0 display serveru Mir (GitHub, Wikipedie). Mir byl představen v březnu 2013 jako náhrada X serveru a alternativa k Waylandu. Dnes Mir běží nad Waylandem a cílen je na internet věcí (IoT).

Ladislav Hagara | Komentářů: 0
20.9. 22:00 | Nasazení Linuxu
Stabilní aktualizace Chrome OS 69 (resp. Chromium OS), konkrétně 69.0.3497.95, přináší mj. podporu linuxových aplikací. Implementována je pomocí virtualizace, a proto je tato funkce také omezena na zařízení s dostatkem paměti a podporou hardwarové akcelerace, tudíž nejsou podporovány chromebooky s 32bitovými architekturami ARM, či Intel Bay Trail (tzn. bez Intel VT-x).
Fluttershy, yay! | Komentářů: 5
20.9. 21:32 | Zajímavý projekt
Došlo k uvolnění linuxové distribuce CLIP OS, vyvíjené francouzským úřadem pro kybernetickou bezpečnost ANSSI, jako open source. Vznikla za účelem nasazení v úřadech, kde je potřeba omezit přístup k důvěrným datům. Je založená na Gentoo.
Fluttershy, yay! | Komentářů: 1
20.9. 16:00 | Komerce

Zjistěte více o bezpečné a flexibilní architektuře v cloudu! IBM Cloud poskytuje bezpečné úložiště pro Vaše obchodní data s možností škálovatelnosti a flexibilitou ukládání dat. Zároveň nabízí prostředky pro jejich analýzu, vizualizaci, reporting a podporu rozhodování.

… více »
Fluttershy, yay! | Komentářů: 12
20.9. 12:22 | Nová verze

V dubnu letošního roku Mozilla představila webový prohlížeč pro rozšířenou a virtuální realitu Firefox Reality (GitHub). V úterý oznámila vydání verze 1.0. Ukázka na YouTube. Firefox Reality je k dispozici pro Viveport, Oculus a Daydream.

Ladislav Hagara | Komentářů: 2
20.9. 12:00 | Komunita

V srpnu loňského roku společnost Oracle oznámila, že Java EE (Enterprise Edition) bude uvolněna jako open source. O měsíc později bylo rozhodnuto, že tato open source Java EE bude přejmenována a předána Eclipse Foundation. Nové jméno bylo oznámeno v únoru letošního roku. Z Java EE se stala Jakarta EE. Eclipse Foundation včera oznámila dosažení dalšího milníku. Zdrojové kódy aplikačního serveru GlassFish jsou již k dispozici v git repozitářích Eclipse Foundation (GitHub).

Ladislav Hagara | Komentářů: 0
Na optické médium (CD, DVD, BD aj.) jsem naposledy vypaloval(a) data před méně než
 (13%)
 (14%)
 (21%)
 (23%)
 (25%)
 (4%)
 (1%)
Celkem 385 hlasů
 Komentářů: 33, poslední 16.9. 11:55
Rozcestník

Dotaz: Spouštění příkazů ze souboru

18.2.2005 10:30 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Spouštění příkazů ze souboru
Přečteno: 373×
Je možné mít seznam příkazů v souboru, který se bude postupně číst a provádět? Něco jako
perl program1.pl
perl program2.pl
python program3.pl
java Main
...
a ve skriptu jednotlivé příkazy spouštět nějak takto
for cmd in `cat commands`
do
  /usr/bin/time -pao time.log $cmd
done
Takto to samozřejmě nefunguje, protože se vystup rozdělí podle mezer a provádí se perl, program1.pl, perl, program2.pl ... Zkoušel jsem použít i uvozovky a apostrofy, ale nic z toho mi nepracovalo.
When your hammer is C++, everything begins to look like a thumb.

Odpovědi

18.2.2005 10:44 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Normáln2 bych pro zpracování příkazů ze souboru použil source soubor, ale ten time mi tam nějak nesedí. Pokud trvas na time, tak bych to asi udělal takhle: while read prikaz; do time $prikaz; done < /tmp/soubor_s_prikazy
-- Nezdar není hanbou, hanbou je strach z pokusu.
18.2.2005 11:03 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Díky, stydím se, že mě nenapadl read a přeměrování. Jde mi totiž o to, že když budu potřebovat příkazy spouštět v nějaké složitější koloně, tak abych změnu mohl udělat na jednom místě a nemusel procházet jednotlivé skripty a tam to měnit!
When your hammer is C++, everything begins to look like a thumb.
18.2.2005 10:51 Jary | skóre: 30 | blog: Jary má blog | Dům
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
No jistě! Toto je velká část kouzla Linuxu a podobných systémů. Na začátku souboru musí být
#!/bin/bash
a když má potom soubor práva x (spouštění), což provedete třeba takto:
chmod a+x mujsoubor
tak potom stačí napsat
./mujsoubor
a provede se vše co je v něm. Bez práv spuštění a bez toho #!interpreter bys ho musel spouštět třeba pomocí bash mujsoubor.

Existuje spousta dalších interpreterů:

  • csh
  • zsh
  • perl
  • ...
  • ...
Mno a ten for by měl vypadat zhruba takhle, ale nevím, to poradí někdo jiný:
for cmd in `cat commands`;
do
  /usr/bin/time -pao time.log $cmd
done;

O bashi myslím tu byly nějaké seriály, tak se koukni.

.sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
18.2.2005 10:55 Jary | skóre: 30 | blog: Jary má blog | Dům
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Takto to samozřejmě nefunguje, protože se vystup rozdělí podle mezer a provádí se perl, program1.pl, perl, program2.pl ... Zkoušel jsem použít i uvozovky a apostrofy, ale nic z toho mi nepracovalo.
Ha. to tam dřív nebylo, nebo su ještě rozespalej, ale možná vám pomůže i můj příspěvek.
.sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
18.2.2005 10:53 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
sed 's:^:/usr/bin/time -pao time.log :' commands | sh
Jinak na slova to rozdělí `cat cmd` (příspěvek do soutěže o nejzbytečnější cat?), po řádcích bys to mohl číst read nebo hrátkami s IFS.
18.2.2005 11:08 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Tohle je také moc pěkné! Kruci, to jsem si myslel, že už shellu rozumím, ale tohle mě fakt nenapadlo:-(. Musím se ještě hodně učit!
When your hammer is C++, everything begins to look like a thumb.
18.2.2005 12:45 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Jestli v tom souboru nejsou žádné shellové konstrukce, tak by stačilo
xargs -l /usr/bin/time -pao time.log <commands
18.2.2005 13:25 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Ještě bych upozornil, že ty řádky nesmí mít mezeru nebo tabelátor na konci. A co je nejhorší, tak time je interní příkaz bashe, takže to nebude fungovat.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
18.2.2005 13:39 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
time mi moc jako interní příkaz bashe nepřipadá: [tsunami@vodik]$ file /usr/bin/time
/usr/bin/time: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), stripped
-- Nezdar není hanbou, hanbou je strach z pokusu.
18.2.2005 14:49 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Time je built-in prikaz v bash, ksh, csh a tcsh (zsh nevim, protoze ho tady na FreeBSD nemame nainstalovany). Klasicky sh (pozor na Linuxu se vetsinou jedna o symlink na bash) time nema a proto spousti usr/bin/time. Dukaz je jednoduchy:
[bash/ksh]$ /usr/bin/time
[bash/ksh]$ time

real    0m0.000s
user    0m0.000s
sys     0m0.000s
[csh/tcsh]% /usr/bin/time
[csh/tcsh]% time
0.003u 0.010s 0:23.87 0.0%      1192+1292k 0+0io 0pf+0w

[sh]$ /usr/bin/time
[sh]$ time
Nejprve jsem si myslel, ze bash predava /usr/bin/time formatovaci string a parametr -p, ale zkuste si napsat time -pao time.log v bashi a dostanete chybu -ksh: -pao: command not found, zatimco v sh probehne vse normalne.
When your hammer is C++, everything begins to look like a thumb.
18.2.2005 16:21 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
je to se mnou tezke, kdyz mam v .bashrc alias time="/usr/bin/time" a nevim o tom :-)
-- Nezdar není hanbou, hanbou je strach z pokusu.
18.2.2005 17:55 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
$ find ${PATH//:/ } -name time -maxdepth 1
$
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
18.2.2005 18:26 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Na běžném systému je /usr/bin/time, stejně tak /bin/true, /bin/test, /bin/kill atd. Když si něco z toho odinstaluješ...
18.2.2005 18:35 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Spouštění příkazů ze souboru
Ač jsem od vynálezu /media na LSB dost zanevřel, tak existence time je předepsána LSB. Máte-li někde nějaký RH, tak rpm -q --requires redhat-lsb je poučné...

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.