Repo Browser

bashcards/bashcards-android
cards/490456965504--raven-of-whispers/assets/raw.sh
#!/usr/bin/env bash
set -euo pipefail;bash -c $'R=\'\\033[0m\';B=\'\\033[1m\';Y=\'\\033[33m\';C=\'\\033[36m\';E=\'\\033[31m\';M=\'\\033[35m\';G=\'\\033[32m\'\nF="";O="";I="";N=""\nP="(OrgAbuseRef|OrgAbuseEmail|#|RTechRef|OrgTechRef|RefRTechEmail|RTechPhone|RTechName|RTechHandle|OrgAbusePhone|OrgAbuseName|OrgAbuseHandle|Ref|RTechEmail|Comment|OrgRoutingRef|OrgRoutingEmail|OrgRoutingPhone|OrgRoutingName|OrgRoutingHandle|OrgNOCRef|OrgNOCEmail|OrgNOCPhone|OrgNOCName|OrgNOCHandle|OrgTechEmail|OrgTechPhone|OrgTechName|OrgTechHandle|Comment)"\nneed(){ command -v "$1" >/dev/null 2>&1; }\npause(){ read -r -p "Enter to continue... " _; }\nclr(){ tput cnorm 2>/dev/null; clear; }\npick(){\n  clr\n  printf "%b" "${C}Log file path:${R} "\n  read -r F\n  [[ -z "${F:-}" || ! -f "$F" ]] && echo -e "${E}Invalid file${R}" && return 1\n}\nprep(){\n  need geoiplookup || { echo -e "${E}Missing geoiplookup${R}"; return 1; }\n  need whois || { echo -e "${E}Missing whois${R}"; return 1; }\n  local n t\n  n="$(basename "$F" | sed \'s/\\(.*\\)\\..*/\\1/\')"\n  t="$(date +"%Y-%m-%d_%H-%M-%S")"\n  O="${n}_results_${t}.txt"\n  : > "$O"\n}\nips(){\n  clr\n  I="$(grep -o \'[0-9]\\{1,3\\}\\(\\.[0-9]\\{1,3\\}\\)\\{3\\}\' "$F" | sort -u)"\n  [[ -z "$I" ]] && echo -e "${E}No IPs found${R}" && return 1\n  N="$(printf "%s\\n" "$I" | wc -l | tr -d \' \')"\n  echo -e "${B}${G}Found ${N} IPs${R}\\n"\n  printf "%s\\n" "$I"\n}\nnet(){\n  clr\n  echo -e "${C}Checking internet...${R}"\n  ping -c 2 1.1.1.1 >/dev/null 2>&1 || { echo -e "${E}Offline${R}"; return 1; }\n  echo -e "${G}Online${R}"\n}\nrun(){\n  clr\n  prep || return\n  ips || return\n  net || { echo -e "${E}Offline${R}" >> "$O"; return; }\n  Z=""\n  while IFS= read -r a; do\n    g="$(geoiplookup "$a" 2>/dev/null)"\n    w="$(whois "$a" 2>/dev/null)"\n    [[ "$g$w" == *"IP Address not found"* ]] && Z+="\\n$a" && continue\n    echo -e "${B}${C}IP:${R} $a"\n    echo "$g" | grep -vwE "$P"\n    echo "$w" | grep -vwE "$P"\n    echo >> "$O"\n  done <<< "$I"\n  [[ -n "$Z" ]] && {\n    echo -e "${E}No-info IPs:${R}$Z"\n    echo -e "${E}No-info IPs:${R}$Z" >> "$O"\n  }\n  echo -e "${Y}Saved to $O${R}"\n}\nview(){\n  clr\n  [[ -z "${O:-}" || ! -f "$O" ]] && echo -e "${E}No output yet${R}" && return\n  less -R "$O"\n}\nwhile true; do\n  clr\n  echo -e "${B}${C}IP LOG ANALYZER${R}"\n  echo -e "${Y}Log:${R} ${F:-<none>}"\n  echo -e "${Y}Out:${R} ${O:-<none>}\\n"\n  echo "1) Select log file"\n  echo "2) Preview IPs"\n  echo "3) Check internet"\n  echo "4) Run analysis"\n  echo "5) View output"\n  echo "q) Quit"\n  read -r -p "> " k\n  case "$k" in\n    1) pick; pause;;\n    2) ips; pause;;\n    3) net; pause;;\n    4) run; pause;;\n    5) view;;\n    q|Q) clr; exit 0;;\n    *) echo -e "${E}Invalid${R}"; pause;;\n  esac\ndone\n'
NameTypeSize
auto-art.pngfile1,790,034
back-data-url.txtfile225,218
back-thumb.pngfile166,206
back.pngfile168,896
front-data-url.txtfile296,670
front-thumb.pngfile120,226
front.pngfile222,485
manifest.txtfile184
qr-payload.txtfile1,623
raw.shfile2,778