美文网首页
shell常用代码

shell常用代码

作者: Joshua520 | 来源:发表于2020-08-06 09:57 被阅读0次

    1、免密执行安装插件

    echo [password] | sudo -S gem install plist
    

    2、为空判断

    if [ -n "$x" ] ; then
       command
    else
       exit 1
    fi
    

    3、遍历文件获取文件名
    文件名称不能带有空格,有空格会获取空格后的名字,现已处理支持带空格的情况。

    for element in `ls "$1" | tr " " "\?"`
    do
        element=`tr "\?" " " <<<$element`
        dir_or_file="$1"/"$element"
        if [ -d "$dir_or_file" ];then
            var=$( find "$dir_or_file" -name '*.xcodeproj' )
            var1=${var##*/}
            if [ -n "$var1" ];then
                podStr="Pods"
               if [[ $var1 == *$podStr* ]];then
                echo "Pods.xcodeproj"
               else
                #截取.之前的所有字符串
                appname=${var1%.*}
                echo $appname
               fi
            fi
           
        fi
    done
    

    带有空格的获取方式,🌰是获取xxx.app这个名字,改签时要用。

    var=$( find "$path/ios_resign/Payload" -name '*.app' )
    app_name=${var##*/}
    

    4、打包ipa脚本

    xcodebuild clean -workspace "${app_name}.xcworkspace" -scheme "${app_name}" -configuration enterprise
    xcodebuild archive -workspace "${app_name}.xcworkspace" -scheme "${app_name}" -archivePath "${app_name}.xcarchive" -quiet
    xcodebuild -exportArchive -archivePath "${app_name}.xcarchive" -exportPath ipa -exportOptionsPlist "Vigame/ExportOptions.plist"
    
    

    5、上传fir.im

    fir publish file -T "${token}" -Q
    

    6、find命令

    keyfile=Images.xcassets
    x=$(find filepath -name $keyfile)
    

    7、添加证书

    #添加证书和描述文件
    security import xx.p12 -k ~/Library/Keychains/login.keychain-db -P [password] -A
    open xxx.mobileprovision
    

    8、shell传递参数
    如果参数超过10个,后续的参数需要加{}

    ${10}
    

    相关文章

      网友评论

          本文标题:shell常用代码

          本文链接:https://www.haomeiwen.com/subject/hldnrktx.html