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 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
dnes 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
včera 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

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

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
20.1. 17:00 | Nová verze

Byl vydán Docker 1.13. Přehled novinek na YouTube a v poznámkách k vydání na GitHubu. Docker umožňuje běh aplikací v softwarových kontejnerech (Wikipedia).

Ladislav Hagara | Komentářů: 4
20.1. 15:51 | Komunita

Mozilla.cz informuje, že nástroje pro webové vývojáře se možná oddělí od Firefoxu a stanou doplňkem. Nástroje pro webové vývojáře prošly velkým přepisem a tým, který se stará o jejich vývoj, by uvítal možnost jejich častějších aktualizacích nezávisle na vydávání nových verzí Firefoxu.

Ladislav Hagara | Komentářů: 10
20.1. 07:00 | Humor

Čtenářům AbcLinuxu vše nejlepší k dnešnímu Dni zvýšení povědomí o tučňácích (Penguin Awareness Day).

Ladislav Hagara | Komentářů: 0
20.1. 06:00 | Komunita

Bylo spuštěno hlasování o přednáškách a workshopech pro letošní InstallFest, jenž proběhne o víkendu 4. a 5. března v Praze. Současně byla oznámena změna místa. InstallFest se letos vrací zpět na Karlovo náměstí do budovy E.

Ladislav Hagara | Komentářů: 0
20.1. 02:48 | Komunita

Greg Kroah-Hartman potvrdil, že Linux 4.9 je jádrem s prodlouženou upstream podporou (LTS, Long Term Support). Podpora je plánována do ledna 2019. Aktuální jádra s prodlouženou podporou jsou tedy 3.2, 3.4, 3.10, 3.12, 3.16, 3.18, 4.1, 4.4 a 4.9.

Ladislav Hagara | Komentářů: 0
20.1. 00:11 | Zajímavý článek

Výrobce síťových prvků, společnost Netgear, spustila nový program, který slibuje vývojářům, expertům, ale i běžným uživatelům vyplacení finanční odměny za nalezení bezpečnostních chyby v jejich produktech. Za nalezení zranitelnosti v hardware, API nebo mobilní aplikaci nabízí odměnu od 150 do 15 tisíc dolarů (dle závažnosti).

Michal Makovec | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (10%)
 (2%)
 (74%)
 (3%)
 (10%)
Celkem 363 hlasů
 Komentářů: 25, poslední včera 13:34
Rozcestník
Reklama

Dotaz: Bash a test existence souboru s určitou příponou

David Watzke avatar 27.2.2006 16:30 David Watzke | skóre: 74 | blog: Blog... | Praha
Bash a test existence souboru s určitou příponou
Přečteno: 1142×
Ahoj.. potřebuju ve skriptu otestovat jestli je v daném adresáři nějaký soubor s příponou třeba .[oO][gG][gG]. Napsal jsem teda tohle:
up() { tr a-z A-Z; }
check() { for F in *.[${F:0:1}$(echo ${F:0:1} | \
up)][${F:1:1}$(echo ${F:1:1} | \
up)][${F:2:2}$(echo ${F:2:2} | up)]; do [ ! -z "$F" ] && \
break; done; }
a spustím
check ogg
jenže to vrací pořád nulu ať už tam ogg je, nebo ne. Asi by to šlo jen poladit a nebyl by problém, jenže mi to přijde trošku extrémismus na takovou trivialitu. Samozřejmě mě napadlo třeba ls *.[oO][gG][gG], ale co kdyby jich tam bylo hafo, že jo...
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

Odpovědi

27.2.2006 16:44 kamco | skóre: 2
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
a nieco take ze

for i in *; do
  if [ -n "`echo $i | grep -w -i ".ogg$"`" ]; then
    pocet=$[ $pocet + 1 ]
  fi;
done;

by nefungovalo?
David Watzke avatar 27.2.2006 16:49 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Ne. Stačí mi exit status... navíc tohle ukazuje nesmysly. V adresáři kde je 22 oggů to ukáže 2. A není to o nic míň prasácký než to moje :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
27.2.2006 17:15 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
[ivok@zero ~]$ ls *.avi 2>/dev/null >/dev/null
[ivok@zero ~]$ echo $?
0
[ivok@zero ~]$ ls *.ogg 2>/dev/null >/dev/null
[ivok@zero ~]$ echo $?
1
27.2.2006 17:17 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
To zas nefunguje na adresáře :-(
David Watzke avatar 27.2.2006 19:33 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
A na spousty souborů... :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
27.2.2006 18:03 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Je tam hned několik záludností. *.ogg se expanduje na neprázdný řetězec *.ogg v případě, že soubory neexistují. Při přiřazení do proměné se nullglob neuplatní takže se to musí prohnat přes echo. No a v neposlední řadě je nocaseglob dost užitečný přepínač a uděláme to v subprocesu, aby jsme si nezměnili aktuální nastavení. Třeba nějak takhle:
check() {
  local a="$(shopt -s nocaseglob nullglob; echo *".$1")";
  test -n "$a";
}
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é.
27.2.2006 18:07 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Co je ještě vtipné, tak když si necháte vypsat obsah proměnné echo $a tak se provede globbing a tak je při ladění potřeba si to vypsat například pomocí echo "x${a}x" Zkrátka samé radosti :-) To byl ale vypečený úkol.
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é.
27.2.2006 18:08 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Ech, zapomenuté středníky :-)
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é.
David Watzke avatar 27.2.2006 19:35 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Díky... docela nářez.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 27.2.2006 20:46 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Ještě něco... ono to asi nepůjde aby se koukl po *.[oO][gG][gG], že? Takhle se podívá jen na to, co mu přesně zadám ... a jediný co mě napadá je hackovat s check ogg, check Ogg... a to je moc prasáčký i na mě...
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
David Watzke avatar 27.2.2006 20:47 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
*prasácký :-)
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.2.2006 09:12 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Ale vždyť ono to kouká po *.[oO][gG][gG]. Na co je tam asi to shopt -s nocaseglob? To si to nemlžete zkusit než něco plácnete?
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é.
David Watzke avatar 28.2.2006 17:01 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Omlouvám se, opravdu mě to nenapadlo... :-(
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
28.2.2006 09:17 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
$ check() { test -n "$(shopt -s nocaseglob nullglob; echo*".$1")"; }
$ touch a.oGg
$ check ogg && echo OK || echo BAD
OK
$ rm a.oGg 
$ check ogg && echo OK || echo BAD
BAD
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é.
28.2.2006 08:47 jones
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
find ./ -type f -maxdepth 1 -name "*.[oO][gG][gG]"
28.2.2006 09:19 Tomik Parizek
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
co takhle?

find . -type f -maxdepth 1 -iname "*.ogg"
David Watzke avatar 28.2.2006 17:06 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: Bash a test existence souboru s určitou příponou
Díky, tohle mě nenapadlo. Jen poznámka, -maxdepth musí být před -type, protože jinak:
find: warning: you have specified the -maxdepth option after a
 non-option argument -type, but options are not positional (-maxdepth
 affects tests specified before it as well as those specified after
 it).  Please specify options before other arguments.
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

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.