On branch rewrite-2022-03-26

Changes to be committed:
modified:   hash-files
	Removing functions, refactoring, testing
rewrite-2022-03-26
Mike Holloway 3 years ago
parent 271b922f1d
commit f32e7b9242
  1. 87
      hash-files

@ -22,55 +22,28 @@ write_log () {
printf '%s hash-files: %s\n' "$DateTimeStamp" "$1" >> $log_file
}
create_list_of_files () {
#echo "=== Get list of files in $Working_Directory. ===
#=================================================="
for file in $(find $Working_Fullpath -maxdepth 1 -type f); do
list_of_files+=( $file )
done
write_log "List of files created successfully."
}
mdls_files () {
for file in $list_of_files; do
for line in $(mdls $file); do
old_IFS=$IFS
unset IFS
mdls_key=$(printf "%s" $line | cut -d '=' -f 1)
mdls_value=$(printf "%s" $line | cut -d '=' -f 2)
if [[ " ${keys_of_interest[*]} " =~ " ${mdls_key} " ]];then
IFS=$old_IFS
: #printf "\n============================\nMDLS Key: %s\nMDLS Value: %s\n============================\n\n" $mdls_key $mdls_value
unset IFS
else
: #echo "Did not print!"
fi
IFS=$old_IFS
done
mdls_per_file () {
file=$1
for line in $(mdls $file); do
old_IFS=$IFS
unset IFS
mdls_key=$(printf "%s" $line | cut -d '=' -f 1)
mdls_value=$(printf "%s" $line | cut -d '=' -f 2)
if [[ " ${keys_of_interest[*]} " =~ " ${mdls_key} " ]];then
IFS=$old_IFS
: #printf "\n============================\nMDLS Key: %s\nMDLS Value: %s\n============================\n\n" $mdls_key $mdls_value
unset IFS
else
: #echo "Did not print!"
fi
IFS=$old_IFS
done
}
hash_files () {
#echo "=== Hash files. ===
#======================"
for file in ${list_of_files[@]}; do
hash=$($md5_bin $file | awk '{ print $1 }')
list_of_hashes+=( $hash )
done
write_log "Files hashed successfully."
}
#create_csv () {
#echo "=== Create array of comma-separated-values. ===
#=================================================="
# for i in ${!list_of_files[@]}; do
# csv_array+=( ${list_of_files[i]},${list_of_hashes[i]} )
# done
# export csv_array
# write_log "CSV Array creation successful."
#}
write_data () {
write_per_file () {
#echo "=== Write data to a .csv file. ===
#===================================="
## Create temp file
@ -82,13 +55,9 @@ write_data () {
csv_columns+=( ${keys_of_interest[key]} )
done
## Print columns to first line of csv
IFS=',';echo "${csv_columns[*]}";IFS=$'\n' >> $temp_csv_file
## Print csv array rows following columns row
for row in ${csv_array[@]};do
printf '%s\n' $row
done >> $temp_csv_file
IFS=',';echo "${csv_columns[*]}";IFS=$'\n'
# cat $temp_csv_file
write_log "$temp_csv_file written successfully."
# write_log "$temp_csv_file written successfully."
}
cleanup () {
@ -101,18 +70,12 @@ cleanup () {
trap cleanup EXIT
echo "Main Start"
create_list_of_files
mdls_files
hash_files
if [ ${#list_of_files[@]} != ${#list_of_hashes[@]} ];then
echo "Error! Number of files and hashes differs. Exiting..." && exit
else
: #create_csv
fi
#write_data
#while $list_of_files >=1; do
#done
#echo "=== Get list of files in $Working_Directory. ===
#=================================================="
for file in $(find $Working_Fullpath -maxdepth 1 -type f); do
hash=$($md5_bin $file | awk '{ print $1 }')
mdls_properties=$(mdls_per_file $file)
write_per_file $file $hash $mdls_properties
done
unset IFS

Loading…
Cancel
Save