ChinaTunnel icon indicating copy to clipboard operation
ChinaTunnel copied to clipboard

redirect.sh部份原始碼不符合POSIX標準,在Android預設的POSIX shell下執行會報錯

Open i9602097 opened this issue 7 years ago • 0 comments

詳細情況請見Unblock Youku討論區的這個帖子 那邊板主建議我過來回報一下 概括的說就是redirect.sh中有兩段這樣的代碼 OLD_IFS="$IFS" IFS=";" arr=($line) IFS="$OLD_IFS" mark=${arr[0]} ip=${arr[1]} domain=${arr[2]} 當中用到bash中獨有的陣列功能 如果在其他shell中執行可能會報錯 而Android預設的是根據POSIX標準開發的shell 如果不先換成其他類bash的shell鐵定會報錯(例如安裝支持bash的busybox) 但是上述代碼並不一定必要用陣列功能 改成下列代碼便能在POSIX shell下執行不用先替換成bash mark=$(echo $line | cut -d ';' -f 1) ip=$(echo $line | cut -d ';' -f 2) domain=$(echo $line | cut -d ';' -f 3)

i9602097 avatar Aug 19 '17 03:08 i9602097