p1mrx:
Es ist seltsam, dass ls auf 58 Optionen angewachsen ist, aber immer noch keine Dateinamen anzeigen kann, die mit \ 0 enden.
Versuchen Sie als Übung, das Verzeichnis nach Größe oder Datum zu sortieren und das Ergebnis an xargs zu übertragen, während Sie alle gültigen Dateinamen unterstützen. Am Ende habe ich einfach aufgegeben und in das Skript alle Dateien mit \ n im Namen ignoriert.
whelming_wave:
, (whitespace-in-filenames-safe). printf (od -> sed)
, , , , , , . , sort --zero-terminated
— GNU , macOS, , .
printf '%b' $(
find . -maxdepth 1 -exec sh -c '
printf '\''%s %s\0'\'' "$(stat -f '\''%m'\'' "$1")" "$1"
' sh {} \; | \
sort --zero-terminated | \
od -v -b | \
sed 's/^[^ ]*//
s/ *$//
s/ */ \\/g
s/\\000/\\012/g')
zsh, , 'command', printf, zsh, escape- . , .
POSIX, , sort.