아래 쉘 스크립트는 bash 쉘에서 완벽하게 작동합니다. 그러나 안드로이드 셸에서 오류가 발생합니다. 안드로이드가 사용하고있는 쉘로 뭔가를해야 할 수도 있습니다. 그러나 어떻게 해결할 수 있습니까? 완벽한 솔루션이 아니라면 해킹이 나를 위해 할 것입니다.쉘 스크립트는 bash에서 작동하지만 'adb 쉘'에서는 작동하지 않습니다.
쉘 스크립트 : 안드로이드 쉘에서
func()
{
local x
x=${1:3:1}
echo "x - $x"
if [ "${x}" = " " -o -z "${x}" ]; then
a="M"
else
a="S"
fi
echo "A - ${a} X - {x}"
}
func "abc=efg"
O/P,
root:/ # sample.sh
x - =
/system/bin/sample.sh[14]: [: =: missing second argument
A - S X - {x}
bash 쉘에 O/P (리눅스) :
PC:~$ ./sample.sh
x - =
A - S X - {x}
스크립트는'#!/bin/bash'로 시작합니까? – Barmar
@Barmar 예. bash 쉘의 #!/bin/bash와 Android 쉘의 #!/system/bin/sh로 시작합니다. –
Android의 bash 버전은 무엇입니까? – Barmar