• [^] # Re: ls sans arguments

    Posté par (site web personnel) . En réponse au message cygwin noms de fichiers avec espaces et tirets. Évalué à 4.

    Si l'idée est d'itérer sur des chemins (fichiers, répertoires, autres — en appliquant ou non des filtres sur les noms, extensions, tailles, dates de dernière modification, profondeur de répertoires, etc.), la combinaison d'outils find et xargs est très largement supérieure à ls (même si en connaissant ls depuis toujours ou presque, c'est tentant et légitime de vouloir balancer sa sortie dans un tube).

    Quelques options pratiques pour la combinaison :

    • find : -print0
    • xargs : -0 et -r

    Quant à ls (même si je ne recommande pas de poursuivre dans cette voie), l'échappement est contrôlable via --quoting-style. Pour les détails d'implémentation, voir les fonctions et variables contenant quoting_style dans src/ls.c (paquet coreutils), notamment decode_switches().

    Debian Consultant @ DEBAMAX