From 3447439d54d74e019f26fb85957ea46f4ea79df2 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Fri, 9 Oct 2020 15:06:05 +0200 Subject: [PATCH] Refactor display_results to be DRY --- inventory.sh | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/inventory.sh b/inventory.sh index 54f082c..be1ccc8 100755 --- a/inventory.sh +++ b/inventory.sh @@ -92,18 +92,20 @@ display_results() { # Types: Vhost, System, Htaccess, Template printf 'File\tAllow\tOrder\tDeny\tSatsify\tTotal (directives)\tCGI\tType (V|S|H|T)\n' >&2 - while IFS= read -r file; do - count_directives "$file" V | tee -a "$result" - done < "$confs_vhost" - while IFS= read -r file; do - count_directives "$file" S | tee -a "$result" - done < "$confs_system" - while IFS= read -r file; do - count_directives "$file" H | tee -a "$result" - done < "$confs_htaccess" - while IFS= read -r file; do - count_directives "$file" T | tee -a "$result" - done < "$confs_template" + + set -- \ + "$confs_vhost" V \ + "$confs_system" S \ + "$confs_htaccess" H \ + "$confs_template" T + # For each types of confs + while [ "$#" -gt 0 ]; do + # For each confs file of that type + while IFS= read -r file; do + count_directives "$file" "$2" | tee -a "$result" + done < "$1" + shift 2 + done } # One line machine summary of the results