Guest User

Untitled

a guest
Oct 11th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.01 KB | None | 0 0
  1. #!/bin/sh
  2. # IconExtractor - v1.7b
  3.  
  4. DisplayHelp() {
  5. echo "Usage: $(basename $0) [OPTIONS]"
  6. echo
  7. echo "Mandatory options:"
  8. echo " -e IPA to extract icon from"
  9. echo " -ea APPNAME to extract icons from, NO spaces"
  10. echo
  11. echo "Other options:"
  12. echo " -h display help"
  13. echo
  14. }
  15.  
  16. echo -e "> IconExtractor v1.7b by wlevit3\n"
  17.  
  18. if [ $# -eq 0 ]; then
  19. DisplayHelp
  20. exit 1
  21. fi
  22.  
  23. function extract {
  24. echo "Checking for work directories"
  25.  
  26. if [ ! -e /var/mobile/Documents/iExtract ]; then
  27. echo "Cannot find work directory... Creating"
  28. mkdir /var/mobile/Documents/iExtract
  29. fi
  30.  
  31. if [ ! -e /var/mobile/Documents/ExtractedIcons ]; then
  32. echo "Cannot find ExtractedIcons directory... Creating"
  33. mkdir /var/mobile/Documents/ExtractedIcons
  34. fi
  35.  
  36. if [ ! -f /var/mobile/Documents/ExtractedIcons/IGNORE.log ]; then
  37. echo "Cannot find log file... Creating"
  38. touch /var/mobile/Documents/ExtractedIcons/IGNORE.log
  39. fi
  40.  
  41. echo "Checking for IPA existence"
  42. if [ ! -f "$IPAInput" ]; then
  43. echo "IPA file does not exist ($IPAInput)"
  44. exit 1
  45. fi
  46.  
  47. WorkDir=/var/mobile/Documents/iExtract
  48. IPADir=$WorkDir/Payload
  49. IconOUT=/var/mobile/Documents/ExtractedIcons
  50. OUT=$IconOUT/IGNORE.log
  51. Error=/var/mobile/Documents/ERROR.txt
  52.  
  53. echo "Extracting IPA"
  54. mv "$IPAInput" $IPAInput.zip
  55. unzip $IPAInput.zip -d "$WorkDir" >> $OUT
  56. mv $IPAInput.zip "$IPAInput"
  57.  
  58. echo "Checking HD and SD icon existence"
  59. cd $IPADir/*.app
  60.  
  61. if [ ! -f Icon.png ]; then
  62. if [ ! -f icon.png ; then
  63. echo "No SD icons found, checking for HD"
  64. else echo "Extracting SD icon"
  65. cp -v icon.png $IconOUT/SD-"$IPAInput".png >> $OUT
  66. fi
  67. else echo "Extracting SD icon"
  68. cp -v Icon.png $IconOUT/SD-"$IPAInput".png >> $OUT
  69. fi
  70.  
  71. if [ ! -f Icon@2x.png ]; then
  72. if [ ! -f icon@2x.png ]; then
  73. dialog --textbox $Error 50 50
  74. else echo "Extracting HD icon"
  75. cp -v icon@2x.png $IconOUT/HD-"$IPAInput".png >> $OUT
  76. fi
  77. else echo "Extracting HD icon"
  78. cp -v Icon@2x.png $IconOUT/HD-"$IPAInput".png >> $OUT
  79. fi
  80.  
  81. rm -fr $WorkDir/*
  82.  
  83. rm -fr $OUT
  84. }
  85.  
  86. function extractapp {
  87. echo "Checking for work directories"
  88.  
  89. if [ ! -e /var/mobile/Documents/ExtractedIcons ]; then
  90. echo "Cannot find ExtractedIcons directory... Creating"
  91. mkdir /var/mobile/Documents/ExtractedIcons
  92. fi
  93.  
  94. if [ ! -f /var/mobile/Documents/ExtractedIcons/IGNORE.log ]; then
  95. echo "Cannot find log file... Creating"
  96. touch /var/mobile/Documents/ExtractedIcons/IGNORE.log
  97. fi
  98.  
  99. APPDir=/var/mobile/Applications/*
  100. IconOUT=/var/mobile/Documents/ExtractedIcons
  101. OUT=$IconOUT/IGNORE.log
  102. Error=/var/mobile/Documents/ERROR.txt
  103.  
  104. echo "Checking HD and SD icon existence"
  105. cd $APPDir/$AppInput.app
  106.  
  107. if [ ! -f Icon.png ]; then
  108. if [ ! -f icon.png ]; then
  109. echo "No SD icons found, checking for HD"
  110. else echo "Extracting SD icon"
  111. cp -v icon.png $IconOUT/SD-"$AppInput".png >> $OUT
  112. fi
  113. else echo "Extracting SD icon"
  114. cp -v Icon.png $IconOUT/SD-"$AppInput".png >> $OUT
  115. fi
  116.  
  117. if [ ! -f Icon@2x.png ]; then
  118. if [ ! -f icon@2x.png ]; then
  119. dialog --textbox $Error 50 50
  120. else echo "Extracting HD icon"
  121. cp -v icon@2x.png $IconOUT/HD-"$AppInput".png >> $OUT
  122. fi
  123. else echo "Extracting HD icon"
  124. cp -v Icon@2x.png $IconOUT/HD-"$AppInput".png >> $OUT
  125. fi
  126.  
  127. rm -fr $OUT
  128. }
  129.  
  130. while [ "$1" != "" ]; do
  131. case $1 in
  132.  
  133. -e)
  134. IPAInput="$2"
  135. shift 2
  136. extract ;;
  137.  
  138. -ea)
  139. AppInput="$2"
  140. shift 2
  141. extractapp ;;
  142.  
  143. -h)
  144. DisplayHelp
  145. exit 0;;
  146. *)
  147. DisplayHelp
  148. echo "Unrecognized option: $1"
  149. exit 1;;
  150. esac
  151. done
  152.  
  153.  
  154. echo "Thanks for using iExtract by wlevit3!"
Add Comment
Please, Sign In to add comment