Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- # IconExtractor - v1.7b
- DisplayHelp() {
- echo "Usage: $(basename $0) [OPTIONS]"
- echo
- echo "Mandatory options:"
- echo " -e IPA to extract icon from"
- echo " -ea APPNAME to extract icons from, NO spaces"
- echo
- echo "Other options:"
- echo " -h display help"
- echo
- }
- echo -e "> IconExtractor v1.7b by wlevit3\n"
- if [ $# -eq 0 ]; then
- DisplayHelp
- exit 1
- fi
- function extract {
- echo "Checking for work directories"
- if [ ! -e /var/mobile/Documents/iExtract ]; then
- echo "Cannot find work directory... Creating"
- mkdir /var/mobile/Documents/iExtract
- fi
- if [ ! -e /var/mobile/Documents/ExtractedIcons ]; then
- echo "Cannot find ExtractedIcons directory... Creating"
- mkdir /var/mobile/Documents/ExtractedIcons
- fi
- if [ ! -f /var/mobile/Documents/ExtractedIcons/IGNORE.log ]; then
- echo "Cannot find log file... Creating"
- touch /var/mobile/Documents/ExtractedIcons/IGNORE.log
- fi
- echo "Checking for IPA existence"
- if [ ! -f "$IPAInput" ]; then
- echo "IPA file does not exist ($IPAInput)"
- exit 1
- fi
- WorkDir=/var/mobile/Documents/iExtract
- IPADir=$WorkDir/Payload
- IconOUT=/var/mobile/Documents/ExtractedIcons
- OUT=$IconOUT/IGNORE.log
- Error=/var/mobile/Documents/ERROR.txt
- echo "Extracting IPA"
- mv "$IPAInput" $IPAInput.zip
- unzip $IPAInput.zip -d "$WorkDir" >> $OUT
- mv $IPAInput.zip "$IPAInput"
- echo "Checking HD and SD icon existence"
- cd $IPADir/*.app
- if [ ! -f Icon.png ]; then
- if [ ! -f icon.png ; then
- echo "No SD icons found, checking for HD"
- else echo "Extracting SD icon"
- cp -v icon.png $IconOUT/SD-"$IPAInput".png >> $OUT
- fi
- else echo "Extracting SD icon"
- cp -v Icon.png $IconOUT/SD-"$IPAInput".png >> $OUT
- fi
- if [ ! -f Icon@2x.png ]; then
- if [ ! -f icon@2x.png ]; then
- dialog --textbox $Error 50 50
- else echo "Extracting HD icon"
- cp -v icon@2x.png $IconOUT/HD-"$IPAInput".png >> $OUT
- fi
- else echo "Extracting HD icon"
- cp -v Icon@2x.png $IconOUT/HD-"$IPAInput".png >> $OUT
- fi
- rm -fr $WorkDir/*
- rm -fr $OUT
- }
- function extractapp {
- echo "Checking for work directories"
- if [ ! -e /var/mobile/Documents/ExtractedIcons ]; then
- echo "Cannot find ExtractedIcons directory... Creating"
- mkdir /var/mobile/Documents/ExtractedIcons
- fi
- if [ ! -f /var/mobile/Documents/ExtractedIcons/IGNORE.log ]; then
- echo "Cannot find log file... Creating"
- touch /var/mobile/Documents/ExtractedIcons/IGNORE.log
- fi
- APPDir=/var/mobile/Applications/*
- IconOUT=/var/mobile/Documents/ExtractedIcons
- OUT=$IconOUT/IGNORE.log
- Error=/var/mobile/Documents/ERROR.txt
- echo "Checking HD and SD icon existence"
- cd $APPDir/$AppInput.app
- if [ ! -f Icon.png ]; then
- if [ ! -f icon.png ]; then
- echo "No SD icons found, checking for HD"
- else echo "Extracting SD icon"
- cp -v icon.png $IconOUT/SD-"$AppInput".png >> $OUT
- fi
- else echo "Extracting SD icon"
- cp -v Icon.png $IconOUT/SD-"$AppInput".png >> $OUT
- fi
- if [ ! -f Icon@2x.png ]; then
- if [ ! -f icon@2x.png ]; then
- dialog --textbox $Error 50 50
- else echo "Extracting HD icon"
- cp -v icon@2x.png $IconOUT/HD-"$AppInput".png >> $OUT
- fi
- else echo "Extracting HD icon"
- cp -v Icon@2x.png $IconOUT/HD-"$AppInput".png >> $OUT
- fi
- rm -fr $OUT
- }
- while [ "$1" != "" ]; do
- case $1 in
- -e)
- IPAInput="$2"
- shift 2
- extract ;;
- -ea)
- AppInput="$2"
- shift 2
- extractapp ;;
- -h)
- DisplayHelp
- exit 0;;
- *)
- DisplayHelp
- echo "Unrecognized option: $1"
- exit 1;;
- esac
- done
- echo "Thanks for using iExtract by wlevit3!"
Add Comment
Please, Sign In to add comment