diff --git a/sysdump.sh b/sysdump.sh index 7bf34f9..b4f17dc 100755 --- a/sysdump.sh +++ b/sysdump.sh @@ -1,5 +1,8 @@ #!/usr/bin/env bash +# The following can be update (use a complex delimiter) +DUMP_DELIMITER="#!#!#!#! SYSDUMP DELIMITER #!#!#!" + ensure() { command -v "$1" >/dev/null 2>&1 || { echo >&2 "$1 not found, abort..."; exit 1; } } @@ -35,12 +38,12 @@ dump() { cleandump() { newdump=$(mktemp) - cat "$1" | awk 'BEGIN{STARTED=0} /#!#!#!#! SYSDUMP START HERE #!#!#!#/{STARTED=1};/#!#!#!#! SYSDUMP END HERE #!#!#!#/{STARTED=0};!/#!#!#!#! SYSDUMP START HERE #!#!#!#/{if(STARTED){print $0}}' > "$newdump" + cat "$1" | awk 'BEGIN{STARTED=0};/'"${DUMP_DELIMITER}"'/{if(STARTED){STARTED=0}else{STARTED=1}};!/'"${DUMP_DELIMITER}"'/{if(STARTED){print $0}}' > "$newdump" mv "$newdump" "$1" } sysdump() { - echo "#!#!#!#! SYSDUMP START HERE #!#!#!#" + echo "${DUMP_DELIMITER}" # Start dump echo "{" USE_COMMA=1 @@ -118,7 +121,7 @@ sysdump() { USE_COMMA=0 dump "dmesg" safecmdroot dmesg echo "}" - echo "#!#!#!#! SYSDUMP END HERE #!#!#!#" + echo "${DUMP_DELIMITER}" } # Parse arguments @@ -170,7 +173,7 @@ ensure base64 [ "$ACTION" == "dump" ] && { sysdump; exit 0; } # Setting up dump file -[ $(grep -c '#!#!#!#! SYSDUMP START HERE #!#!#!#' "$1") -ne 0 ] && cleandump "$1" +[ $(grep -c "${DUMP_DELIMITER}" "$1") -ne 0 ] && cleandump "$1" # Setup safegetentry DUMP_FILE="$1" DUMP_ENTRIES=$(cat "${DUMP_FILE}"|jq -r "keys[]";)