Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Obecná podpora => Téma založeno: JanaKam 30 Ledna 2012, 13:00:04
-
Ahoj Potřebovala bych pomoct s příkazem ls.
Pročítám nápovědu ,ale je anglicky takže jí uplně moc nerozumím, hledala jsem ruzně na internetu přepínač k příkazu ls který vypíše jen adresáře ,ale nemohu na to přijít. Poradí prosím někdo jak napsat příkaz ls aby vypsal všechny adresáře v dalších adresářích
ls -R vypisuje adresáře i soubory a já bych potřebovala vypsat jen seznam adresářů.
-
Nejsem si jistý, ale myslím, že parametr byl -R a -d
-
No to právě vypíše pouze tečku
-
Zkus
ls -lR adresar | grep '^d.*'
-
a to předtim R je co za znak?? l nebo I nebo |
-
To je L, vypíše ti to informace o těch souborech jako práva atd. podle toho identifikuješ adresář :)
-
wow sice vubec nechapu jak ,ale funguje mi to mohl by si mi prosim ještě vysvětlit co znamena '^d.*' abych to mohla pochopit tu funkci toho přikazu
-
Tak grep ti vytiskne řádky, který odpovídají tomu co je mezi ' ' což je regulární výraz.
^ - značí, že řádek začíná na to co bude za tím následovat
^d - jakože začíná na d což identifikuje adresář
.* - pak znamená libovolně dlouhý jakýkoliv řetězec, protože tečka je libovolný znak a hvězdička je 0 až libovolně opakování
-
pokud chces rekurzivne tak jedine pomoci find eg ``find $somewhere -type d''
-
a co tak pomocou tree
napr tree -d -L 2 - d>vypis len adresare, L>vypis aj podpriecinky do zadanej [2.] urovne, bez -L neobmedzene.