J'ai vu beaucoup de questions et réponses ici en utilisant une construction dans le sens de
list_dir=`ls -t /path/to/dir/`
for i in $list_dir; do
ou
ls -t | while read i; do
Maintenant, je sais que vous ne devriez pas utiliser ls dans les scripts car il se casse facilement; mais je ne peux pas trouver une meilleure façon d'opérer sur les fichiers dans l'ordre de la dernière modification à la dernière modification (ou vice versa).
Je peux utiliser quelque chose comme:
find . -type f -printf '%T@ %p\n' | sort -n | cut -d ' ' -f 2- | while read i; do...
... mais cela rompra toujours avec tous les fichiers qui ont des retours à la ligne dans leurs noms, et est beaucoup plus laid pour démarrer. Y a-t-il une meilleure façon?
--zero-terminated
- merci pour cela, j'aimerais pouvoir vous donner encore plus de points!