• [^] # Re: Lit tes cours / demande à ton prof ?

    Posté par . En réponse au message Script pour vérifier si une chaîne de caractère existe dans le magic number. Évalué à 2. Dernière modification le 24 juillet 2019 à 20:50.

    A noter que si la clef se situe au même endroit dans les fichiers, il n'est pas utile de la passer à grep .

     [ "`xxd -l 6 -s 0 -ps {}`" = "23212f62696e" ] && cp {} ailleurs/

    devrait faire l'affaire. Ici, la clef se trouve en début de fichier ( -s 0 ).

    Pour donner tout ça à manger à find , il est plus facile de décomposer le tout:

    #!/bin/sh
    where=/home/david
    to=/home/david/test
    for i in `find ${where} -type f `; do
     m=`{mathjax} ( xxd -l 6 -s 0 -ps "`{i}" ) 
     [ "`{mathjax} m" = "23212f62696e" ] && cp "`{i}" "${to}/"
    done

    Par contre, cela ne prend pas en charge les fichiers avec des espaces dans le nom.

    Ceci se traduit par,

    • pour chaque fichier trouvé dans where, le stocker dans i
    • récupérer les 6 premier octets de ce dernier
    • comparer ces octets à clef
    • si correspondance, copier le fichier dans to

    Il y a un bug dans l'affichage du code, les simple quotes sont interprétées.
    Des mathjax apparaissent