|
|
|
@ -3,34 +3,38 @@ set -a |
|
|
|
|
source .env 2>&1 > /dev/null |
|
|
|
|
set +a |
|
|
|
|
|
|
|
|
|
DateTimeStamp=$(date +\%D_\%T|sed 's/[\:\/]/-/g') |
|
|
|
|
|
|
|
|
|
## Functions |
|
|
|
|
############ |
|
|
|
|
|
|
|
|
|
write_log () { |
|
|
|
|
echo " ++ Write to log. |
|
|
|
|
$DateTimeStamp - $1 |
|
|
|
|
+++++++++++++++" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
create_list_of_files () { |
|
|
|
|
#echo "=== Get list of files in $Working_Directory. === |
|
|
|
|
#==================================================" |
|
|
|
|
IFS=$'\n' |
|
|
|
|
for file in $(find $Working_Fullpath -maxdepth 1 -type f); do |
|
|
|
|
IFS=$'\n' |
|
|
|
|
for file in $(find $Working_Fullpath -maxdepth 1 -type f); do |
|
|
|
|
list_of_files+=( $file ) |
|
|
|
|
done |
|
|
|
|
unset IFS |
|
|
|
|
done |
|
|
|
|
write_log "List of files created successfully." |
|
|
|
|
unset IFS |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
hash_files () { |
|
|
|
|
#echo "=== Hash files. === |
|
|
|
|
#======================" |
|
|
|
|
IFS=$'\n' |
|
|
|
|
for file in ${list_of_files[@]}; do |
|
|
|
|
IFS=$'\n' |
|
|
|
|
for file in ${list_of_files[@]}; do |
|
|
|
|
hash=$(md5sum $file | awk '{ print $1 }') |
|
|
|
|
list_of_hashes+=( $hash ) |
|
|
|
|
done |
|
|
|
|
unset IFS |
|
|
|
|
done |
|
|
|
|
write_log "Files hashed successfully." |
|
|
|
|
unset IFS |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
create_csv () { |
|
|
|
@ -40,6 +44,7 @@ create_csv () { |
|
|
|
|
csv_array+=( ${list_of_files[i]},${list_of_hashes[i]} ) |
|
|
|
|
done |
|
|
|
|
export csv_array |
|
|
|
|
write_log "CSV Array creation successful." |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
write_data () { |
|
|
|
@ -51,10 +56,11 @@ write_data () { |
|
|
|
|
printf '%s\n' $line |
|
|
|
|
done >> $temp_csv_file |
|
|
|
|
# cat $temp_csv_file |
|
|
|
|
write_log "$temp_csv_file written successfully." |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
cleanup () { |
|
|
|
|
: |
|
|
|
|
write_log "Cleanup completed successfully." |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
## Main |
|
|
|
@ -64,17 +70,13 @@ trap cleanup EXIT |
|
|
|
|
|
|
|
|
|
echo "Main Start" |
|
|
|
|
create_list_of_files |
|
|
|
|
write_log |
|
|
|
|
hash_files |
|
|
|
|
write_log |
|
|
|
|
if [ ${#list_of_files[@]} != ${#list_of_hashes[@]} ];then |
|
|
|
|
echo "Error! Number of files and hashes differs. Exiting..." && exit |
|
|
|
|
else |
|
|
|
|
create_csv |
|
|
|
|
fi |
|
|
|
|
write_log |
|
|
|
|
write_data |
|
|
|
|
write_log |
|
|
|
|
cleanup |
|
|
|
|
|
|
|
|
|
#while $list_of_files >=1; do |
|
|
|
|