find $DIR -depth -maxdepth 3 \
-type d -readable -printf \
'printf "\\n%p\\n"
ls -t --color=always "%p"\n' |\
. /dev/stdin 2>&-
Dadurch werden Probleme mit der Argumentliste vermieden, da das einzige Argument, lsdas jemals empfangen wird, der Name des Verzeichnisses ist, das aufgelistet werden soll. Sie können dies mit allem tun, was Sie möchten.
Die Schale nur . sourcesdie |pipeals Shell - Skript - es ist der gleiche Prozess und nicht über die Probleme auftreten können , wenn execveaufgerufen wird.
In jedem Fall - das oben genannte geht nur drei-tief, was durch Ändern einstellbar ist maxdepth. Es ist auch tief zuerst - so arbeiten Sie sich rückwärts zu Ihrem aktuellen Verzeichnis von depth.
Sie werden vielleicht bemerken, dass Sie auch $LSCOLORS- auf meinem Computer gibt es auch ordentlich gedruckte Spalten und alles andere, was Sie sich wünschen würden ls- oder alles, was Sie sich vorstellen können, mit dem Sie etwas anfangen möchten. source.
KEINE SVN
Auch dies wird alles tun, was Sie erwarten ls. Das Ausblenden von .svnDateien ist also so einfach wie das Ändern der lsZeile in:
ls -t --color=always --hide="*svn" "%p"\n
Oder wenn Sie svnErweiterungen in jedem Ordner sehen möchten, ABER ./svnSie können sie so ändern, dass der gesamte Befehl folgendermaßen aussieht:
find $DIR -depth -maxdepth 3 \
-type d -readable -printf \
'printf "\\n%p\\n" ; hide=
[ "%p" = "./svn" ] && hide="*svn"
ls -t --color=always --hide="$hide" "%p"\n' |\
. /dev/stdin 2>&-
Persönlich mag ich es mit ls -sund, wenn Sie sich interessieren, -usortieren Sie nach Zugriffszeit und nicht nach Mod-Zeit.