Minor changes

This commit is contained in:
Loïc Guégan 2024-07-05 16:37:36 +02:00
parent 90f9e68123
commit 0bd910dc56
2 changed files with 11 additions and 0 deletions

View file

@ -9,6 +9,8 @@ Run a dump:
Run a dump on a remote machine using ssh: Run a dump on a remote machine using ssh:
> cat sysdump.sh | ssh user@host /bin/bash > dump.json > cat sysdump.sh | ssh user@host /bin/bash > dump.json
Extra ouput from ssh (e.g: MOTD) will be automatically cleaned by `sysdump.sh`.
To explore a dump (require `jq`), see help as follow: To explore a dump (require `jq`), see help as follow:
> ./sysdump.sh -h > ./sysdump.sh -h

View file

@ -29,7 +29,14 @@ dump() {
[ "$USE_COMMA" -eq 0 ] && echo "\"${entry}\": \"${value}\"" [ "$USE_COMMA" -eq 0 ] && echo "\"${entry}\": \"${value}\""
} }
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"
mv "$newdump" "$1"
}
sysdump() { sysdump() {
echo "#!#!#!#! SYSDUMP START HERE #!#!#!#"
# Start dump # Start dump
echo "{" echo "{"
USE_COMMA=1 USE_COMMA=1
@ -106,6 +113,7 @@ sysdump() {
USE_COMMA=0 USE_COMMA=0
dump "dmesg" safecmdroot dmesg dump "dmesg" safecmdroot dmesg
echo "}" echo "}"
echo "#!#!#!#! SYSDUMP END HERE #!#!#!#"
} }
# Parse arguments # Parse arguments
@ -155,6 +163,7 @@ ensure base64
# Do dump # Do dump
[ "$ACTION" == "dump" ] && { sysdump; exit 0; } [ "$ACTION" == "dump" ] && { sysdump; exit 0; }
[ $(grep -c '#!#!#!#! SYSDUMP START HERE #!#!#!#' "$1") -ne 0 ] && cleandump "$1"
# List entries # List entries
[ "$ACTION" == "list" ] && { ensure jq; cat "$1"|jq -r "keys[]"; exit 0; } [ "$ACTION" == "list" ] && { ensure jq; cat "$1"|jq -r "keys[]"; exit 0; }
# Parse dump file # Parse dump file