[問題] 安卓4.2環境下執行sh問題

看板Linux作者 (Q仔)時間6年前 (2019/05/12 12:08), 編輯推噓3(3012)
留言15則, 6人參與, 6年前最新討論串1/1
各位熱心鄉民午安 有一系列的問題求教 大致敘述一下主要目的 「su權限、刪除及複寫根目錄下的特定檔案、設捷徑」 三個目標 感覺不難 但我遇到了一些問題 腳本寫好了,逐行輸入是確定沒問題 卡在寫成sh檔放進手機,卻無法執行 找不到路徑 1.執行sh /system/bin/test1.sh 會出現路徑不對 連su都找不到 所以故意把sh放在system/bin裡也不行 https://i.imgur.com/YK49ziW.png
2.有鄉民回應可能是不能這樣換行 每一條後面加上 && 或 && \ 結果一樣不行 後來發現可能是腳本內有su所以後面幾行都不會執行 echo done1 && echo done2 && su && echo done3 只會跑到su變成# 而echo done3出不來 https://i.imgur.com/82niqGb.png
不知道是不是這個原因 3.APP內有個初始命令可以設定 開這個APP就執行腳本 這樣達到設定捷徑的目的 https://i.imgur.com/XLzhGl4.png
目前設定sh /system/bin/test1.sh 這個結果跑出來是和問題1一樣 路徑不對 所以暫時應該算是解決了捷徑問題 4.補充 安卓環境4.4.2下能執行的terminal 找到的幾個APP好像比較陽春 有熱心鄉民推薦的termux不支援 目前適用這款 Terminal Emulator for Android https://i.imgur.com/iT94Nyb.png
有其他款好用的還請推薦 5.sh檔指令,寫得很簡單,獻醜了 #!/system/bin/sh su mount -o remount,rw / cd data/data/com.app.app/files/files/ rm *.log cd documents rm *.log cd .. cp 0510.log /data/data/com.app.app/files/documents/0510.log chmod 777 0510.log echo Done 應該就差在路徑抓不到而已 不知道要怎麼設定才對 還請企鵝版鄉民協助指導 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.84.124.45 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1557634087.A.46D.html

05/12 12:45, 6年前 , 1F
Android Root了沒?
05/12 12:45, 1F

05/12 12:50, 6年前 , 2F
有的 逐行輸入是可以正常執行的
05/12 12:50, 2F

05/12 13:55, 6年前 , 3F
su -
05/12 13:55, 3F

05/12 14:29, 6年前 , 4F
su 不是這樣用的 ... 你要執行就 su -c '一行文'
05/12 14:29, 4F

05/12 14:30, 6年前 , 5F
不然就不要 su,直接對那個 script setuid
05/12 14:30, 5F

05/12 16:40, 6年前 , 6F
樓上正解,
05/12 16:40, 6F

05/13 09:42, 6年前 , 7F
回Bencrie 謝謝你的方法可行 後續有幾個小問題想請
05/13 09:42, 7F

05/13 09:42, 6年前 , 8F
05/13 09:42, 8F

05/13 09:51, 6年前 , 9F
若有其中有1條是刪除指定檔案 但沒找到檔案 後面的
05/13 09:51, 9F

05/13 09:51, 6年前 , 10F
就不執行了 不能繼續往後執行嗎?
05/13 09:51, 10F

05/13 11:28, 6年前 , 11F
set -e 會在命令返回非零時退出, set +e 就不會。
05/13 11:28, 11F

05/14 01:09, 6年前 , 12F
加在su之前,或包在 sc -c " set +e && .." 都不行
05/14 01:09, 12F

05/14 01:10, 6年前 , 13F
不過順序換一下還是能執行 但是會跳錯誤就是了
05/14 01:10, 13F

05/14 01:42, 6年前 , 14F
用 ; 去串無視回傳值,或者 rm -f 強制成功
05/14 01:42, 14F

05/16 17:35, 6年前 , 15F
謝謝以上幾位熱心鄉民:)
05/16 17:35, 15F
文章代碼(AID): #1SrvmdHj (Linux)