Mogę użyć, ls -ld */
aby wyświetlić listę wszystkich pozycji katalogu w bieżącym katalogu. Czy istnieje podobnie prosty sposób, aby po prostu wyświetlić listę wszystkich zwykłych plików w bieżącym katalogu? Wiem, że mogę użyć find
find . -maxdepth 1 -type f
lub stat
stat -c "%F %n" * | grep "regular file" | cut -d' ' -f 3-
ale nie wydają mi się zbyt eleganckie. Czy istnieje przyjemny, krótki sposób, aby wyświetlić tylko zwykłe pliki (nie dbam o urządzenia, potoki itp.), Ale nie podkatalogi bieżącego katalogu? Lista linków symbolicznych również byłaby plusem, ale nie jest koniecznością.
ls -d */
, co jest krótkie, łatwe do pisania i łatwe do zrozumienia. Jestem więc bardzo zadowolony z odpowiedzi Ulricha Dangela, mimo że nie używam zsh.
find
polecenie jest najlepszym sposobem na robienie tego, co chcesz. Aby uzyskać pewne niezawodne inne opcje, powinieneś przyjrzeć się poleceniom specyficznym dla powłoki (a te nie są przenośne)!