shell腳本和jenkins

1 壓縮/解壓縮

zip壓縮命令

tar壓縮

zip -r

+ zip -r www prd-uniapp-V4.04.30.wgt
    zip warning: name not matched: prd-uniapp-V4.04.30.wgt

zip error: Nothing to do! (try: zip -r www . -i prd-uniapp-V4.04.30.wgt)
  • 原因:
zip -r www prd-uniapp-V4.04.30.wgt

這個(gè)后面兩個(gè)參數(shù)寫反了。應(yīng)該是:

zip -r prd-uniapp-V4.04.30.wgt www

2 shell

shell sed

shell匹配到字符串再替換整行

shell刪除文件中的指定行

shell sed: erro

sed: 1: "test.json": undefined label 'est.json'
sed: 1: "i/versioCode/\"versionN ...": command i expects \ followed by text

Mac上sed命令使用變量

shell grep

shell awk

shell字符串

說(shuō)明:該網(wǎng)站是比較詳細(xì)的shell命令的教程。(當(dāng)然也包括其他語(yǔ)言,比如C/C++/JAVA/Python等)

shell字符串提取數(shù)字

shell正則提取版本號(hào)

shell判斷文件是否存在

shell沒(méi)有執(zhí)行/shell部分命令沒(méi)有執(zhí)行只是打印出來(lái)了

  • 原因:shell命令,如下有問(wèn)題:
echo "上傳安卓文件成功:"$VersionName"/"$ANDROID_FILE"

在echo后面的字符串拼接應(yīng)該是不合規(guī)范,導(dǎo)致這條命令之后的都沒(méi)發(fā)正常執(zhí)行

shell判斷字符串相等

3 jenkins

jenkins問(wèn)題:

/tmp/jenkins2311422376864515502.sh: 70: /tmp/jenkins2311422376864515502.sh: Syntax error: Unterminated quoted string
Build step 'Execute shell' marked build as failure

原因:缺少雙引號(hào)。
處理:這里是有一個(gè)cd路徑的命令,最后面不知道怎么誤寫了一個(gè)雙引號(hào)。去掉即可。

Jenkins Branches to build切分支

Jenkins打包APP版本失敗。

cd /opt/application/jenkins/jenkins_home/workspace/app-demo-uniapp-android
+ sed -i s/0.1.10/3.12.21/g /opt/application/jenkins/jenkins_home/workspace/app-demo-uniapp-android/app/src/main/assets/apps/__UNI__921542C/www/manifest.json
sed: can't read /opt/application/jenkins/jenkins_home/workspace/app-demo-uniapp-android/app/src/main/assets/apps/__UNI__921542C/www/manifest.json: No such file or directory
Build step 'Execute shell' marked build as failure
  • 原因:由于這是新版本。HBuilderX 3.2.16的離線版本已經(jīng)修改了manifest對(duì)應(yīng)的結(jié)構(gòu)。原先的manifest是保留在離線項(xiàng)目中的,但是最新版本是合并在離線資源里的。
    導(dǎo)致原先需要對(duì)manifest進(jìn)行配置更新的操作,最新版本不需要這么操作了。

  • 處理:去掉舊版本中針對(duì)manifest更新版本名稱和版本號(hào)的操作(兩條set -id腳本語(yǔ)句)。

Jenkins壓縮文件報(bào)錯(cuò):

unzip www.zip
Archive:  www.zip
replace www/__uniappes6.js? [y]es, [n]o, [A]ll, [N]one, [r]ename:  NULL
(EOF or read error, treating as "[N]one" ...)
Build step 'Execute shell' marked build as failure
  • 處理:
    查詢了 UNZIP命令,通過(guò)-o 解決了這個(gè)問(wèn)題 ,-o 使解壓時(shí)不必先詢問(wèn)用戶,unzip執(zhí)行后覆蓋原有文件。

  • 參考:
    https://www.cnblogs.com/liuyongcn/p/5433133.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容