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í
×
dnes 17:11 | IT novinky

Společnost Wave Computing představila iniciativu MIPS Open. Architektura MIPS bude k dispozici jako open source.

Ladislav Hagara | Komentářů: 0
dnes 16:11 | Nová verze

Pro vývojáře v programovacím jazyce Python: Krátce po vydání multiplatformního frameworku Qt ve verzi 5.12 bylo vydáno také Qt for Python 5.12. Knihovna pro vědecké výpočty v Pythonu SciPy (Wikipedie) byla po šesti měsících vývoje vydána v nové verzi 1.2.0.

Ladislav Hagara | Komentářů: 0
včera 22:33 | Zajímavý projekt

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Hacking for the Holidays by No Starch Press. Za 1 dolar a více lze koupit 5 elektronických knih, za 8 dolarů a více lze koupit 10 elektronických knih a za 15 dolarů a více lze koupit 15 elektronických knih věnovaných počítačové bezpečnosti, penetračnímu testování, forenzní analýze nebo kryptografii od nakladatelství No Starch Press. Nákupem lze podpořit organizaci Electronic Frontier Foundation (EFF).

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

Po devíti měsících od vydání verze 5.4 byla vydána verze 5.5 svobodného multiplatformního softwaru pro konverzi a zpracování digitálních fotografií primárně ve formátů RAW RawTherapee (Wikipedie). Nová verze RawTherapee je k dispozici také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

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

Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal varování (pdf) před používáním softwaru i hardwaru společností Huawei Technologies Co., Ltd., a ZTE Corporation. Používání těchto prostředků představuje bezpečnostní hrozbu.

Ladislav Hagara | Komentářů: 47
včera 13:33 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 159. brněnský sraz, který proběhne v pátek 21. prosince od 18:00 v restauraci Na blbým místě na adrese Pellicova 5b.

Ladislav Hagara | Komentářů: 1
včera 12:55 | Bezpečnostní upozornění

V relačním databázovém systému SQLite (Wikipedie) byla nalezena bezpečnostní chyba pojmenovaná Magellan. Chyba se týká také webových prohlížečů postavených na Chromiu podporujících WebSQL API (POC). Bezpečnostní chyba byla opravena v SQLite 3.26.0 a v Chromiu 71.0.3578.80.

Ladislav Hagara | Komentářů: 1
včera 12:11 | Nová verze

WinBtrfs, open source systémový ovladač pro systémy Microsoft Windows umožňující přístup k linuxovému souborovému systému Btrfs, byl vydán ve verzi 1.1. Přináší podporu komprese zstd (Zstandard). WinBtrfs je používán například v operačním systému ReactOS.

Ladislav Hagara | Komentářů: 0
16.12. 12:44 | Komunita

Nadace Cloud Native Computing Foundation (CNCF), jejíž cílem je usnadnit spolupráci při vývoji a zavádění nových cloudových technologií, projekt konsorcia Linux Foundation, organizovala od 10. do 13. prosince v Seattlu konferenci KubeCon + CloudNativeCon North America 2018. Shrnutí dění na konferenci v příspěvku na blogu. V úvodu konference společnost Red Hat věnovala této nadaci distribuovanou key-value databázi etcd. Jedná se o

… více »
Ladislav Hagara | Komentářů: 0
14.12. 14:33 | Nová verze

Byla vydána nová verze 1.30 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání.

Ladislav Hagara | Komentářů: 2
Chystáte se přejít na Wayland na „desktopu“?
 (25%)
 (9%)
 (11%)
 (31%)
 (25%)
Celkem 149 hlasů
 Komentářů: 19, poslední 14.12. 18:37
Rozcestník

Dotaz: vypis jen casti souboru

28.3.2005 23:11 nick
vypis jen casti souboru
Přečteno: 156×
portreboval bych se souboru s textem vypsat jen jeho cast, ta cast co potrebuji vypsat je ohranicena.

pro lepsi pochopeni priklad obash souboru:
tady je nejaky text
tady je nejaky text
tady je nejaky text
tady je nejaky text
tady je nejaky text
START
tady je nejaky text
tady je nejaky text
STOP
tady je nejaky text
tady je nejaky text
a ja potrebuji vypsat jen ten text co je mezi START a STOP, a nevim jak na to

zousel jsem seda, ale nejak mi to neslo :(

jak jsem trapil seda:
sed -e '1,/START:/d /STOP/,$d' < soubor 
sed -e '/START/,/STOP/p' < soubor
a jeste mnoho jsem toho zkousel ale radsi uz to sam psat nebudu, jinak me ukamenujete :)

Odpovědi

28.3.2005 23:15 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Včetně značek:

sed -n '/^START$/,/^STOP$/p' soubor

bez značek:

sed '1,/START/d;/STOP/,$d' soubor
28.3.2005 23:16 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Jo, sorry, to druhé jsem upravil příliš málo:

sed '1,/^START$/d;/^STOP$/,$d' soubor
28.3.2005 23:26 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
moc dekuji

PS: az tak daleko jsem nebyl :)
Josef Kufner avatar 28.3.2005 23:25 Josef Kufner | skóre: 68
Rozbalit Rozbalit vše Re: vypis jen casti souboru
jen tak od boku strelim...
$vypis = false;
while (<>) {
  if (/^START$/) {
    $vypis = true;
  } elif (/^STOP$/) {
    $vypis = false
  } elif ($vypis){
    print $_;
  }
}
v perlu moc nepisu, takze to asi bude chtit par korektur...
Hello world ! Segmentation fault (core dumped)
28.3.2005 23:30 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Chceš-li nutně použít perl, doporučuji

s2p '1,/^START$/d' '/^STOP$/,$d' soubor | perl - soubor
28.3.2005 23:52 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
mam souvisejici problem: kdyz udelam to co jsem mi poradil, a to
sed '1,/^START$/d;/^STOP$/,$d' soubor
tak to vse funguje jak ma,

ale kdyz tento cely prikaz dam jako promenu
BLEEE=`sed '1,/^START$/d;/^STOP$/,$d' soubor`
a pak to chci vypsat, tak to sice funguje, ale vsechno mi to vypise na jeden radek, a ne tak jak to bylo na tom puvodnim textu.... nevite proc?
Marek Bernát avatar 29.3.2005 00:10 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: vypis jen casti souboru
man bash
              $(command)
       or
              `command`

       Bash performs the expansion by executing command and replacing the com-
       mand substitution with the standard output of  the  command,  with  any
       trailing newlines deleted.
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
29.3.2005 00:15 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Chtělo to zřejmě vložit o větu víc:

Embedded newlines are not deleted, but they may be removed during word splitting.
Marek Bernát avatar 29.3.2005 00:18 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Pravda, ale ja som chcel len poukazat na to, ze mal pouzit man. :-)
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
29.3.2005 00:15 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Tipoval bych spíš
man bash
/^QUOTING
;-)
echo "$promenna"
29.3.2005 12:06 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
nechci se vymlouvat na moji malou znalost anglictiny, ale to co jste mi sem dali, mi moc nepomohlo....

nechcete mi to nejak upresnit?

nejakej priklad by se hodil... snad bych to i pochopil :)
29.3.2005 12:17 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Chceš-li opravdu jednoduchou radu: Nedávej to do proměnné.
29.3.2005 12:31 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
co na to rict ? :) snad jen to ze by se v tom mem zdrojaku pak nevyznal ani tvurce (coz jsem ja) a to by bylo fakt spatne.

ja tu jeste jednou ukazu o co se snazim, ok? ok, vsichni souhlasite, tak jdu na to:

tady je obash souboru data:
blee
blee
START
ahoj
cuz
STOP
blee
blee
a ja potrebuju "vykuchat" to ahoj cuz a dat to pozdeji to pouzit v FOR cyklu,

timto "vykucham" to "ahoj" a "cuz"
sed '1,/^START$/d;/^STOP$/,$d' soubor

a pak potebuju tu promenou vypsat,
BLEEE=`sed '1,/^START$/d;/^STOP$/,$d' soubor`
echo $BLEEE
ale tohle mi to vypise:
vangroff@snehurka:~/do_something > ./exec
ahoj cuz
ale ja potrebuji aby to vypsalo takhle:
vangroff@snehurka:~/do_something > ./exec
ahoj
cuz
PS: mooc, prosim... poradte! lol
29.3.2005 12:37 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
sed '1,/^START$/d;/^STOP$/,$d' soubor

to rovnou vypíše. Proč to potřebuješ v proměnné?
29.3.2005 12:43 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
potrebuju to dale nekam vypsat (pracovat s tim)

neco jako:

SOUBOR=`sed '1,/^START$/d;/^STOP$/,$d' soubor`

for i in $SOUBOR;do
echo "neco tu je: $i"
done
chapete? mozna to neni az tak moc srozumitelne, ale ja to proste potrebuji dat do promene.... :)
29.3.2005 12:48 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Např.:
sed ... | while read do ... done
nebo
sed ... | xargs ...
Prostě do proměnné to nepotřebujete :-)
29.3.2005 12:56 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
nechci aby to vypadalo jako ze si nechci nechat poradit, ale co kdyz s tim potrebuju nekolikrat pracovat, a hodilo by se (uz kvuli uspore vykonu) a kvuli nejake ty "eleganci" to pouzit jako promenou a pracovat s tou promenou, nebo se to takhle nedela? ja nejsem moc velkej programator, jak asi vidite.. tak fakt nevim, to byl jen muj nazor :)
Marek Bernát avatar 29.3.2005 12:52 Marek Bernát | skóre: 17 | blog: Arcadia
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Ale ved twofish ti to uz napisal
Namiesto $premenna, napises "$premenna", aby sa ti zachovali povodne znaky (o tom je QUOTING).
physics.stackexchange.com -- Q&A stránky o fyzike v štýle StackOverflow.
29.3.2005 13:00 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
wow... nojo funguje to, omlouvam se, nejak jsem to prehlidl :) huraaaa
29.3.2005 13:09 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Pokud ti to funguje, tak jsi to nejspíš nejpotřeboval dávat do proměnné...
29.3.2005 13:07 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
To sice ano, ale pak bude mít

for x in "$variable"; do ...;done

právě jednu iteraci, při níž bude v $x celá $variable, protože jsi zrušil word splitting.
29.3.2005 13:20 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
mozna ze jsem to zase az tak moc dobre neudelal, ale pouzil jsem to takto
DATA=`sed '1,/^START$/d;/^STOP$/,$d' test`

for X in `echo "$DATA"`; do
a je to tu: $X
done
a to funguje....

PS: nebo to je zase spatne? (treba neprogramatorsky) :), programatornejsem , tak to neprogramatorsky muze bejt :)
29.3.2005 13:25 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Už ti bylo odpovězeno, že tohle se dělá

sed '1,/^START$/d;/^STOP$/,$d' file | while read x; do something with $x; done
29.3.2005 13:41 nick
Rozbalit Rozbalit vše Re: vypis jen casti souboru
vy me uz asi zabijete :) ale stale mi to nejde....

nastala zmena, v souboru test je toto:
neco
START
ps aux
uname -a
STOP
neco
ja toho potrebuju vypsat, no spise spustit ten prikaz, a ten jeho vysledek nekam vypsat, nejlepe do souboru ...

co ted?

takhle jsem to zkousel ja:
sed '1,/^START$/d;/^STOP$/,$d' test | while read x; do "$x"; done
to nejde!

napise to toto:
vangroff@snehurka:~/do_something > ./exec
./exec: line 41: ps aux: command not found
./exec: line 41: uname -a: command not found
a to jako vybec nechapu ...
29.3.2005 13:47 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: vypis jen casti souboru
Přečti si man bash.

V tomhle případě bych nevynalézal kolo ale poslal to rovnou shellu:
sed '1,/^START$/d;/^STOP$/,$d' test | sh
29.3.2005 13:49 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: vypis jen casti souboru
No tak se vraťte na začátek a přečte si tu sekci v manuálové stránce ještě jednou. HINT: máte tam pro změnu závorky navíc.

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.