Constructeur de commande find

Remplissez ce que vous cherchez et ce qu’il faut en faire : l’outil écrit la commande find, protégée pour bash, explique chaque morceau et prévient des pièges connus (l’arrondi de -mtime et de -size, -delete avec -prune…).

Où
Quoi
Taille
Modifié il y a
Ensuite
Commande

    

Morceau par morceau

Transparence

La commande est écrite dans votre navigateur, par les scripts listés ci-dessous. Rien de ce que vous saisissez ne quitte cette page.

Garanti par votre navigateur
La politique de sécurité du contenu (CSP) de cette page n’autorise qu’une destination, la mesure d’audience du site (connect-src https://stats.r-no.fr, voir plus bas), et interdit tout envoi de formulaire (form-action 'none') : même un bogue ne pourrait envoyer nulle part ce que vous saisissez. Vous pouvez lire cette politique en haut du code source de la page.
Mesure d’audience
Comme toutes les pages du site, celle-ci compte sa visite avec Umami, installé sur le serveur de R-no lui-même (stats.r-no.fr). Il reçoit l’adresse de la page, sans paramètres ni ancre, le site d’où vous venez (son nom de domaine seulement), votre navigateur, votre système, votre langue et la taille de votre écran, ainsi que le pays, la région et la ville déduits de votre adresse IP, qui n’est pas conservée. Il ne reçoit jamais ce que vous saisissez, ni le résultat de l’outil. Aucun cookie, rien d’enregistré dans votre navigateur ; si votre navigateur demande à ne pas être suivi (Do Not Track), rien n’est mesuré. Les données sont effacées au bout de 25 mois.
  • /commun/mesure.js : le filtre appliqué avant chaque envoi, écrit pour R-no Toolbox. 1.4 kB
    SHA-256 225eec74fd12623d82fc05ee7d222be629ce454d081c129e8d1e249ed37ee716
  • https://stats.r-no.fr/m.js : le script de suivi d’Umami, libre (MIT), servi par le serveur de mesure. Son empreinte n’est pas affichée ici : elle change à chaque version d’Umami, et vous ne pouvez pas vérifier depuis votre navigateur qu’il s’agit du code publié. Pour cette partie, il faut faire confiance à R-no.
Ce qui est conservé
Aucun cookie, et rien dans l’adresse. Ce que vous saisissez n’est jamais conservé : tout disparaît quand vous rechargez ou fermez la page. La langue est donnée par l’adresse elle-même (/en/ ou /fr/) : rien n’est conservé pour s’en souvenir. Comme tout site web, le serveur note le téléchargement de la page et de ses fichiers dans ses journaux d’accès (adresse IP, date et heure, adresse demandée, nom du navigateur). Il ne reçoit jamais ce que vous saisissez.
Le code qui s’exécute ici
  • app.js: la construction de la commande, ses explications et avertissements, écrits pour R-no Toolbox. Non minifié, sans bibliothèque tierce. 14.4 kB
    SHA-256 a2f0a1eeaa7c2e8adb321ab460973177a77f0859e72b3b94f72afdc2da298dce
  • textes.js: les messages en français de l’outil, affichés par son script (le reste de la page française est écrit dans son HTML à la construction du site). Il ne fait que définir des textes, sans aucune logique. 10.5 kB
    SHA-256 b3fbb422530a4d778cd46cdd7967ca94c43355ae49f0f32a384daefec3961d91
  • /commun/langue.js: l’aide à la traduction, la même sur toutes les pages du site. Elle lit la langue de la page et donne à l’outil ses messages dans cette langue. Elle ne conserve rien. 1.6 kB
    SHA-256 80f76f69773ef628d36d09bf8387cfedebda4529210d7120649b6f5603310631
Avant de coller
Cette page ne fait qu’écrire du texte : elle n’exécute rien, ni ici ni sur votre machine. Ce que vous collez dans un terminal ou un fichier de configuration s’exécute avec vos droits : relisez-le d’abord. Le code qu’elle écrit ne télécharge rien et n’appelle aucun service extérieur.
Comment c’est vérifié
Les commandes ont été lancées avec GNU find sur une arborescence de test (noms avec espaces, .git et node_modules à exclure, fichiers vieux de 2 et 3 jours, un fichier de 2 Mo) : exclusions, casse, âges, tailles et chaque action ont donné le résultat attendu.
Linux et macOS
Les options utilisées ici existent dans GNU find (Linux) et dans le find de macOS et des BSD : -maxdepth, -iname, -mmin, -empty, -delete, -print0. Sous macOS, le dossier de départ est obligatoire : l’outil l’écrit toujours.
Vérifiez vous-même
Téléchargez un script et comparez son empreinte avec celle affichée ci-dessus :
curl -s https://r-no.fr/linux/find/app.js | shasum -a 256
Limites
Un sous-ensemble de find : ni -perm, ni -newer, ni -regex, ni combinaisons avec -o autres que les exclusions. La commande à lancer est découpée sur les espaces : pour des tubes ou des redirections, écrivez vous-même sh -c '…' sh {} +. Les tailles sont en Kio, Mio, Gio (puissances de 1 024), comme find les compte.