読者です 読者をやめる 読者になる 読者になる

iPhoneシミュレータにインストールしたアプリのサンドボックス下をFinderで開くコマンドを書いた

iPhoneシミュレータにインストールしてるアプリのSQLiteファイルとか直参照してデバッグしたい時にいちいちビルドのログからパスコピペして開いていたけどコマンドから開けるようにした

/usr/local/bin/iossim-home Sample.xcodeproject
# 文字列一致なので iossim-home Sample でもいい

内容は以下のような感じです

  1. Sample.xcodeprojやSample.hoge|SampleをSample.appに置き換え
  2. mdfindでLibrary以下を名前検索
  3. 最後にヒットしたパスをopenコマンドで開く
cd /usr/local/bin 
curl -O https://gist.github.com/laiso/8382366/raw/iossim-home
chmod +x iossim-home

https://gist.github.com/laiso/8382366

#!/bin/sh
 
usage()
{
  echo "  iossim-home [-d SDK] APPNAME\n"
  exit
}
 
IOSSDK_VERSION=""
while getopts "d:" OPT 
do
    case $OPT in
        d)
            IOSSDK_VERSION=${OPTARG}
            ;;
    esac
done
 
shift `expr $OPTIND - 1`
 
ARGBASENAME=$(echo $1 | xargs -0 basename)
if [ ! -n $ARGBASENAME ]; then
  ARGBASENAME=$(echo $1 | sed -e "s/\///g")
fi
 
IOSAPPNAME="${ARGBASENAME}.app"
IOSAPPPATH=$(mdfind -name $IOSAPPNAME -onlyin ~/Library/Application\ Support/iPhone\ Simulator/ | grep "iPhone Simulator/${IOSSDK_VERSION}" | head -n 1)
echo $IOSAPPPATH;exit
 
OPENPATH=$(echo "${IOSAPPPATH}" | sed -e "s/${IOSAPPNAME}//g")
if [ ! -d "${OPENPATH}" ]; then
  echo "[ERROR] Couldn't find the app path."
  exit 1
fi
 
open "${OPENPATH}"