Ls - wyświetlenie tylko plików|katalogów


(Sawyer47) #1

Witam, taki mały problem a mnie zaskoczył, jak wyświetlić tylko nazwy katalogów lub tylko plików? Przeczytałem mana ls i nic nie znalazłem na ten temat. Stąd moje pytanie: jak elegancko wyświetlić tylko pliki lub tylko foldery?

Nikt nie wie? Naprawdę nie ma krótszych sposobów niż

ls -F|grep /|tr -d /

ls -F|grep [^/]$

Nie ma jakiegoś lepszego, krótszego rozwiązania, które obsługiwałoby również np. dowiązania symboliczne i ogólnie byłoby bardziej eleganckie? Mógłbym napisać takie skrypty, ale wtedy ograniczam się tylko do mojej maszyny, chodzi mi o coś uniwersalnego.


(nintyfan) #2

Znam jeszcze (d to chyba bit lepkości??):

ls -l | egrep "^d.+$"

Wiem, że to nie jest wcale prostsze rozwiązanie rozwiązanie, dlatego czekam na odpowiedź. Aż się dziwie temu. No cóż, jeżeli ktoś nie wykorzystuje shela do pisania skryptów, kolorki mu w zupełności powinny wystarczyć... Jednak też czekam na rozwiązanie.


(Sawyer47) #3

Nie, nie, bit lepkości to co innego, jest na WIkipedii. Właśnie bardzo zdziwiło mnie to, w dodatku moje rozwiązania są tylko do folderów/plików, a co w dowiązaniami i innymi typami plików? Ja wiem, że KISS i wszystko to plik, ale skoro ls potrafi rozróżnić typ pliku przez opcje -l czy -F to czemu nie ma opcji filtracji wyników, ze względu na typ?