Portál AbcLinuxu, 11. května 2025 01:15

Dotaz: Oprava cyklu v bash

12.11.2017 01:00 Hroch
Oprava cyklu v bash
Přečteno: 597×
Odpovědět | Admin
Mám takový cyklus a nedaří se mi ho upravit tak, aby načetl jen soubory bez přípony, může někdo poradit prosím?
for a in $(find /fold -name "*")
do
  echo $a
done
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.11.2017 01:21 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Oprava cyklu v bash
Odpovědět | | Sbalit | Link | Blokovat | Admin

Hvězdičce odpovídají i jména "s příponou", tohle není DOS. Pokud chcete jména neobsahující tečku, tak to tak napište:

  find /dir \! -name "*.*"

Ale pokud budete výstup příkazu find používat způsobem, jaký naznačujete, budete mít problém se soubory, které mají v názvu mezeru. Aby se dalo poradit s tím, musel byste trochu přesněji popsat, co opravdu potřebujete (v tom vašem příkladu je zbytečný cyklus i echo).

12.11.2017 02:11 Hroch
Rozbalit Rozbalit vše Re: Oprava cyklu v bash
Nemusím to dělat takto, klidně můžu použít jen ten find, ale nevím zda umí find (bez loopu) přímo sourcnout soubory.
12.11.2017 15:41 Zaphod | skóre: 37 | blog: zaphod_blog
Rozbalit Rozbalit vše Re: Oprava cyklu v bash
find /fold -type f \! -name "*.*" -exec echo {} \;

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.