Portál AbcLinuxu, 11. května 2025 04:27

Dotaz: bash - Hromadné procházení složek a vykonání akce

10.8.2013 20:15 Tom
bash - Hromadné procházení složek a vykonání akce
Přečteno: 300×
Odpovědět | Admin
Mám několik adresářů (číslo se bude měnit) a v těch adresářích sou soubory s kterejma dále chci pracovat... Potřebuju jít do adresáře, vykonat požadovanou akci a jít zase do dalšího atp... Adresáře maj názvy 01 02 03... tak sem si říkal že bych to udělal cyklem, zjistil bych počet adresářů a podle toho bych tolikrát vykonal požadovanou akci v cyklu, kde by byla v adrese proměnná s counterem... Jenže i zde mám problém že za boha nevím jak udělat počítadlo které by počítalo 01,02,03.. když si udělám counter tak mě počítá 1,2,3, navíc mě tahle metoda přijde křečovitá, nelze to udělat nějak jinak, efektivněji? A jak udělat udělat požadovanej counter?

Dík za rady :-)

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

10.8.2013 20:30 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: bash - Hromadné procházení složek a vykonání akce
Odpovědět | | Sbalit | Link | Blokovat | Admin

Myslím že man find je odpovědí na první část.

A toto je myslím odpověď na druhou část:
#!/bin/bash

for((i=0;i < 20;i++)){
  it=$(printf "%02d" $i)
  echo "printf: $it";
  if [ "$i" -lt "10" ]; then
    it="0$i"
  else
    it="$i"
  fi
  echo "if: $it"
}
To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
10.8.2013 22:06 Tom
Rozbalit Rozbalit vše Re: bash - Hromadné procházení složek a vykonání akce
Odpovědět | | Sbalit | Link | Blokovat | Admin
ok dik... k tomu pocitadlu tohle me napadlo, ale myslel sem ze to pude vyresit lepe...
Řešení 1× (chess)
10.8.2013 23:14 NN
Rozbalit Rozbalit vše Re: bash - Hromadné procházení složek a vykonání akce
Odpovědět | | Sbalit | Link | Blokovat | Admin
Find zvladne vyhledavat ve vice adresarich najednou..
find 01 02 03 04 -exec echo foo \;
10.8.2013 23:21 NN
Rozbalit Rozbalit vše Re: bash - Hromadné procházení složek a vykonání akce
Take muzes seznam predat jako sekvenci, promenou atp.
find {01..3} -exec echo foo \;

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.