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

Dotaz: Rekurzivni prohledavani adr. struktury pomoci "ls"

19.11.2008 07:56 Tomas Kuranyi
Rekurzivni prohledavani adr. struktury pomoci "ls"
Přečteno: 462×
Odpovědět | Admin
Dobry den.

Je mozne vypsat na std. vystup vsechny polozky od akt. adresare pomoci ls?

Pomoci find je to tak nejak: find . -type neco.......

ls umi prepinac -R, no bohuzel, to vypisuje divne... Vzdy adresar, a jeho obsah na dalsi radek bez cesty. Ja bych chtel pro vsechny polozky celou cestu (resp. cestu od akt. adresare). Pomoci grep to lze taky udelat: grep -lR.........

Tedy mam otazku... prave ls to neumi??

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

Odpovědi

19.11.2008 09:36 Jan Šimák | skóre: 37 | Hradec Králové
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Odpovědět | | Sbalit | Link | Blokovat | Admin
Podle mě tuto funkci ls nepodporuje. Jediné co se vzdáleně blíží vašemu požadavku je ls -R1
19.11.2008 16:38 Tomas Kuranyi
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Takze nepodporuje. Tak zustava find...
19.11.2008 16:57 Daniel Tihelka | skóre: 4
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Ciste find . (pripadne find adresar/od/kud/vypisovat) nestaci?
19.11.2008 17:42 Tomas Kuranyi
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
No prave, ze asi jedine normalni reseni...

Ale kdyz aj ls umi prohledavat rekursivne adr. strukturu pomoci prepinace -R, pak by bylo dobre (ja bych alespon ocekaval), ho donutit, at vypisuje vsechny polozky vcetne cesty. Ono to vypisuje, ale ten vystup bych mel jeste pretransformovat, abych mel ten jisty vysledek jako u find.

Me slo o to, ci ls umi nebo ne... Prece je to pomocny programek c.1 na vypis obsahu adresare...

Treba psat Stallmanovi, at to opravi... :))
19.11.2008 20:58 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Tak trochu si sám aj opovedáš: ls je program na vypísanie obsahu adresára, a nie na žiadne prehľadávanie. Ono to rekurzívne prechádzanie adresárov môže byť totiž niekedy dosť ošemetná záležitosť, ak zvážáme existenciu mountpointov, symlinkov, a pod. Takže IMHO písanie Stallmanovi nepomôže, lebo sa o žiadnu missing feature nejedná.
19.11.2008 21:29 Tomas Kuranyi
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Tak naco je tam prepinac?
       -R, --recursive
              list subdirectories recursively
V podstate
ls -R1
robi to co chcem.... ale ta forma vystupu mi vadi.. :( Nevadi skusim napisat skript, ktory bude simulovat
find .
a bude tam
ls
:)))

ad Stallman -- myslel som jako legraci... :)))
20.11.2008 07:39 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Prečo tak tvrdohlavo trváš na použití ls a si ochotný písať skript, ktorý bude simulovat find . pomocou ls, namiesto toho, aby si proste použil ten find? Je to nejaké školské zadanie či čo?
19.11.2008 17:56 diverman | skóre: 32 | blog: život s tučňáčkem
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Odpovědět | | Sbalit | Link | Blokovat | Admin
find . -type f -exec ls -l {} \;
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
19.11.2008 18:07 Tomas Kuranyi
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
No, jo, ale jednotlive polozky i v tomto pripade pripravi find
19.11.2008 20:45 rubicon
Rozbalit Rozbalit vše Re: Rekurzivni prohledavani adr. struktury pomoci "ls"
Když už opravdu zatoužíte spouštět ls, tak raději takto:

find . -type f -print0 | xargs -0 ls -l

Jinak podobnou službu zastane přímo find:

find . -type f -ls

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.