#!/bin/sh
echo " Vesion 1.6"
# listing des fichier
find / -exec ls -ld {} \; |while read ligne
do
# Analyse des infos du "ls"
read -a tb <<< $ligne
#La boucle ici pour s'assurer que le nom et le chemin du fichier
#ne son pas tronquée par read si un espace ce trouve dans un nom d'unrepertoire ou un fichier
b=7
a=${#tb[*]}
#echo $ligne
while true
do
if [ $a -ge $b ]
then
PathFile="$PathFile ${tb[$b]}"
b=$(($b + 1))
else
echo sortie
b="0"
a="0"
break
fi
done
octal=0
test "`echo ${tb[0]} |cut -c2`" = "r" && octal=`expr $octal + 400`
# test "${tb[0]} |cut -c3`" = "w" && octal=`expr $octal + 200`
# test "${tb[0]} |cut -c4`" = "x" && octal=`expr $octal + 100`
# test "${tb[0]} |cut -c5`" = "r" && octal=`expr $octal + 40`
# test "${tb[0]} |cut -c6`" = "w" && octal=`expr $octal + 20`
# test "${tb[0]} |cut -c7`" = "x" && octal=`expr $octal + 10`
# test "${tb[0]} |cut -c8`" = "r" && octal=`expr $octal + 4`
# test "${tb[0]} |cut -c9`" = "w" && octal=`expr $octal + 2`
# test "${tb[0]} |cut -c10`" = "x" && octal=`expr $octal + 1`
# sticky bit on
# test "`-k $PathFile`" = "x" && octal=`expr $octal + 1000`
# Bit setgid on
# test "`-g $PathFile`" = "x" && octal=`expr $octal + 2000`
# setuid on
# test "`-u $PathFile`" = "x" && octal=`expr $octal + 4000`
# test "`echo $1 |cut -c4`" = "s" && octal=`expr $octal + 4100`
# test "`echo $1 |cut -c7`" = "s" && octal=`expr $octal + 6110`
# test "`echo $1 |cut -c10`" = "t" && octal=`expr $octal + 7001`
# test "`echo $1 |cut -c4`" = "S" && octal=`expr $octal + 4000`
# test "`echo $1 |cut -c7`" = "S" && octal=`expr $octal + 6000`
# test "`echo $1 |cut -c10`" = "T" && octal=`expr $octal + 7000`
# Ecriture
#j'ai mis d'abort les droit avant le fichier pour des facilité de lecture pour la suite
echo "$tb[0] $octal $tb[2] $tb[3] $PathFile" >> "`pwd`/Desktop/droit000.txt"
PathFile=""
tb=""
#on fait une pause pour lire les info
#sleep 1
done
exit 0