Je crois que, plus au moins ça pourrait fonctionner.
#!/bin/bash
mkdir stat
mkdir stat/texte
mkdir stat/binaire
while read I ;do
I=${I%:}
while read J ;do
J=${J%\*}
TYPE=$(file "$I"/"$J"|cut -d ':' -f 2 |cut -d ',' -f 1)
echo ${TYPE}
if [[ -n $(echo ${TYPE}|grep "ELF") ]];then
if [[ -z $(ls stat/binaire/"${I}") ]] ;then
mkdir stat/binaire/"${I}"
fi
cp "$I"/"$J" stat/binaire/"${I}"
fi
if [[ -n $(echo ${TYPE}|grep "text") ]] ;then
if [[ -z $(ls stat/texte/"${I}") ]] ;then
mkdir stat/texte/"${I}"
fi
cp "$I"/"$J" stat/texte/"${I}"
fi
done < <(ls -Fa1 "${I}"|grep -v "/"|grep -v "@"|grep -v "|"| grep -v "=")
done < <(ls -RFa1 /usr/bin|grep ":")
Attention au triage des binaires et des textes. Par example, dans le textes ils sont inclus "Perl script text executable" et "ASCII text" mais pas "Bourne-Again shell script" ou "OpenDocument Text".
Et dans les binaires seulement les ELF , et peut être que tu veux incluire aussi les bash scripts , Perls scripts...
Salut
Dernière modification par empanada (24-09-2018 21:17:34)
"blues are the roots and the other musics are the fruits" . Willie Dixon