Front / Back (click to flip)
Click card to view front/back
Raw Script
#!/usr/bin/env bash
set -euo pipefail;bash -c $'[ -n "${BASH_VERSION:-}" ] || { command -v bash >/dev/null 2>&1 && exec bash "$0" "$@"; }\nR=\'\\033[0;31m\';G=\'\\033[0;32m\';B=\'\\033[0;34m\';N=\'\\033[0m\'\nT="${1:-}";D="";M=10;S=3;O="";Z=""\nS1="";S2="";k="";x="";y="";L="";a="";b="";f="";i="";t="";s=""\nn(){ command -v "$1" >/dev/null 2>&1; }\nc(){ tput cnorm 2>/dev/null; clear; }\np(){ read -r -p "Enter to continue... " _; }\ng(){ cat <<\'EOF\'\ndumpsys meminfo|Memory Usage|meminfo.txt\ndumpsys media.audio_flinger|Audio History|audio.txt\ndumpsys sensorservice|Sensors|sensors.txt\ndumpsys adb|ADB Info|adb.txt\ndumpsys account|Accounts|accounts.txt\ndumpsys persona|Personas|persona.txt\ndumpsys fingerprint|Fingerprint|fingerprint.txt\ndumpsys netstats|Network Stats|netstats.txt\ndumpsys mount|Mounts|mount.txt\ndumpsys power|Power|power.txt\ndumpsys dropbox|Crashes|dropbox.txt\ndumpsys location|Location|location.txt\ndumpsys notification|Notifications|notification.txt\ndumpsys telecom|Telecom|telecom.txt\ndumpsys lock_settings|Lock Settings|lock.txt\ndumpsys package|Packages|packages.txt\ndumpsys wifi|WiFi|wifi.txt\ndumpsys window|Windows|window.txt\ndumpsys stats|Stats|stats.txt\ndumpsys batterystats|Battery|battery.txt\ndumpsys usb|USB|usb.txt\ndumpsys clipboard|Clipboard|clipboard.txt\nEOF\n}\nu(){\n n adb || { echo -e "${R}adb not installed${N}"; return 1; }\n adb get-state >/dev/null 2>&1 || { echo -e "${B}Starting adb...${N}"; adb start-server >/dev/null 2>&1; sleep 1; }\n}\nd(){\n u || return 1\n D=""\n for ((i=1;i<=M;i++)); do\n if [[ -n "${T:-}" ]]; then\n D="$T"\n s="$(adb -s "$D" get-state 2>/dev/null)"\n [[ "$s" == "device" ]] && echo -e "${G}Device: $D${N}" && return 0\n echo -e "${B}Waiting for $D ($i/$M)${N}"\n else\n D="$(adb devices | awk \'NR>1 && $2=="device"{print $1; exit}\')"\n [[ -n "${D:-}" ]] && echo -e "${G}Device: $D${N}" && return 0\n echo -e "${B}Waiting for device ($i/$M)${N}"\n fi\n sleep "$S"\n done\n echo -e "${R}No device found${N}"\n D=""\n return 1\n}\nt0(){ c; read -r -p "Device serial (blank=auto): " T; p; }\nw0(){\n c\n read -r -p "Retries (10): " x\n read -r -p "Sleep (3s): " y\n [[ -n "${x:-}" ]] && M="$x"\n [[ -n "${y:-}" ]] && S="$y"\n}\no0(){\n Z="$(date +"%Y%m%d_%H%M%S")"\n O="DumpSysReport_$Z"\n mkdir -p "$O" || { echo -e "${R}Cannot create $O${N}"; return 1; }\n}\nr0(){\n echo -e "${B}[$1/$2] $4${N}"\n if adb -s "$D" shell $3 | tee "$O/$5"; then\n S1="${S1}✔ $4\n"\n else\n S2="${S2}✖ $4\n"\n fi\n echo\n}\nl0(){\n c\n echo -e "${B}COMMAND SET${N}\\n"\n i=0\n while IFS= read -r L; do\n [[ -z "${L:-}" ]] && continue\n i=$((i+1))\n IFS="|" read -r a b f <<< "$L"\n printf "%2d) %s -> %s\\n" "$i" "$b" "$f"\n done <<< "$(g)"\n echo\n p\n}\ns0(){\n echo -e "${B}SUMMARY${N}"\n echo -e "${G}OK:${N} $(printf "%s" "$S1" | sed \'/^$/d\' | wc -l | tr -d \' \')"\n printf "%s" "$S1" | sed \'/^$/d\'\n echo\n echo -e "${R}FAIL:${N} $(printf "%s" "$S2" | sed \'/^$/d\' | wc -l | tr -d \' \')"\n printf "%s" "$S2" | sed \'/^$/d\'\n echo\n echo -e "${B}OUT:${N} $O"\n}\na0(){\n c\n d || { p; return; }\n o0 || { p; return; }\n S1="";S2=""\n t="$(g | wc -l | tr -d \' \')"\n i=0\n while IFS= read -r L; do\n [[ -z "${L:-}" ]] && continue\n i=$((i+1))\n IFS="|" read -r a b f <<< "$L"\n r0 "$i" "$t" "$a" "$b" "$f"\n done <<< "$(g)"\n s0\n p\n}\ne0(){\n c\n d || { p; return; }\n o0 || { p; return; }\n l0\n read -r -p "Number: " k\n [[ -z "${k:-}" ]] && return\n L="$(g | sed -n "${k}p")"\n [[ -z "${L:-}" ]] && return\n S1="";S2=""\n IFS="|" read -r a b f <<< "$L"\n r0 1 1 "$a" "$b" "$f"\n s0\n p\n}\nv0(){ c; [[ -z "${O:-}" ]] && echo -e "${R}No output yet${N}" || ls -lah "$O"; p; }\nwhile true; do\n c\n echo -e "${B}ADB DUMPSYS MENU${N}"\n echo "Dev: ${T:-auto} Retry:$M Sleep:${S}s"\n echo "Out: ${O:-none}"\n echo\n echo "1) Set device"\n echo "2) Set retry/sleep"\n echo "3) List commands"\n echo "4) Run ALL"\n echo "5) Run ONE"\n echo "6) View output dir"\n echo "q) Quit"\n read -r -p "> " k\n case "$k" in\n 1) t0;;\n 2) w0; p;;\n 3) l0;;\n 4) a0;;\n 5) e0;;\n 6) v0;;\n q|Q) c; exit 0;;\n *) echo -e "${R}Invalid${N}"; p;;\n esac\ndone\n'
QR Payload
bash -c "$(echo H4sIAAAAAAAAA8VX3VLbRhS+71OcqiLYZYx/SHqBYqaAIWHqH4IgmQSnjGytYcfyytGuMC7yW3R61afrk/ScXUmWDGku2pkOzErnnN2j7/yvf/i+HsuoPuKizsQ9jDx5951kCmosDmHO52zi8cAhNtTGYG9fQ02AZT8eHbpvb96fXLhng/5+bWXBZ0gSeIRxOJt5woea0QUHdZ/d10UcBNA6eNGEFy+APbCxEVp2w8LlZ8uB1VBctIfbw2Fjb++64ew1Z8Nt502R0yLOUZHzkjj9NQfJobhsI7omQXI6bctyeu1mw3Hbe86AqE+4DIXbpHe3ReuUlgdalrR0afFoGdEyoYXTomiR+rioVEuGWnbT2jRUWzSmjWoeKxiLMJqhIN/kwDhgXqS3zWlbxDxUFkFtDtaJUCwCFeJHhOIiZru7u2DBjd59q7/uKXj9erh9Mjglo/14NpdLCTM242ISJj02C6MlXEnvliUpc1c9qOJOn3u7Xuzz8GYScHHLouSQKHjLpcLDiZaVD0kmZBhJFt3zMUtcQyUpt7zV80fJYecIzggOEhvS8TiMhUoOzVMmKWNDyZxFMhRecm6eMkkZ5V0TjX4ecVR4Wngv8MsHBFNSefjVPlOLMJqCq6mMveEoDbRnYGpiA2O4QNed61W/l8V+FM5H4UNyHGHCM5mkdHlTEGI8eSiSbvaScTaAh4pPeLqlXyAQfIEqH1IsYJisyWX6TOknCKY3WPeYbbeSYKBTMopkGzZ74yll1rl5YlzSl/K2BSJKPvBTntDbpkz44QKl9JCJITeyTUfFxOaZwIw8hVWyNLuODJGkzPLOWI6SK/cowWdZMA44BsOL/OQ4f8t5ZisVmMCqi7HqhgJAUGabVsfGdyH2SeqGFyviYgyACwQUBMy3H/vYgrCsVRwJMP0A9OFbpmqEmj1pjptqj1ZofURRoIPYBFKlpEWSpEa1iK3iSfORAWPz9Kv476foY/pEBokYHd3QACZhBJUKbzcd/rrdc/jOTrXqgB+SDIBP4Dpr/Jem2392QN0xYeRaj31pZRS2SbtCIGsSj3SsgsmFFljN96Nyy5YWtNtgoRSbC31Bz4q1M96sOlq0D3ZH+4HkqS2NTFPJeR88rn1HxtkdqNi8bveq+qzZzwLJihZozAaAhAS8xRSG2/2LAz227Fa7naF71F0FbHQwe+BqNdwuGWM81Uk99Z/aYQA8Y8uEm6eJvGW7mu+HQltYytV+mKmZYD/zcyVZMqwTBFNHNfS8cUoDyliA8yDiXgCVUeCJaduLVVjdxzl16cBcZ96ikebd2KhdK7hgKuLo5EqzoY88bG5wtRmVPanFSxLnjn0oOLaHYXuwSuJlQeyieGlpQ8IMzCeKtE/JuGNtfdyabfk3W2+3eluuZYKIF4UONgh3KS/YPIzUjf1J82dTnxtw9sB6pgUce4I6wBjNQN324LkOgP9RhqMU42u7Wbdbn8F+mYcDq65YQzg+sLztPUxMxejUoG6/soplSNca+9Ftrv7683dUNBRazTrJ6cKD8hbK/1jLTeIQGA0vKMWshPF40Osd9jvgnlwSyGGqgLd12i7ueMDg7NRt54HsrlsIRec3UtMtRCe73qRdpm1jC9ppVquGJlVWYuXaPBjBBG89r1FNN816XYcTsLZafhW2JNQOcCVguIfTMqJlktdCerxya0JtrEY12nT5bGTcK7T64mMellIpD37ZJwHYlRyJpC+6eCNMsD58bCD1X+26P9xGejGGWkDxwzQiCWR945uHi2BLSXd6eNb9CoTWv4Hw9PBXIBytBleXKYKBqTSvlEK+KZV5VgnpJAwbz/MLd3MiFRXr7T8B/z/TL2pkeaZo8b6dcbKxzjf2b/wUNDZbZj+ejVhE7XKa9UNt8rRgslFB4m7mWAqyaZzT1Txtgc+6a312I0bf9hT6qYl/Tz1UdMd9Nmnyrw+en6B6goWx/mG1ZMoMUXRSgPUfeHe6P+cjSKeFimKWJcPTvka/UzpXvXP3owu9k/5VudRp2OGsposPTbgVAA2v5b7dQ0fQlMLkd1eycGAQKzqA6AUmwKrUacyOZpWu1+kULpxsGX5EH6jrSV4Q7lWhi7/Nsl+exS++rMJFLOCw2y0wXxnmoH9SYP5UhfecLTL34UQrCL9U4V3MlbWZWQdZTo09ST6bWnjPNRWAlqiG4xgC4S8a5PmURsRBLkSMXk4gNpYTiOk+J74k76qUBHSvgpz7Y7WcAGfi3gt4dslOP8ikh8E1V57tvwEAySdl2RAAAA== | base64 -d | gunzip)"