2

Androidで次の単純なシェルスクリプトを実行しようとしています:

#!/system/bin/sh 
echo "Hello World!"

ファイルに「test」という名前を付け、「/system/bin/ 」に配置しました..パーミッション755に変更し、グループシェルに変更しました..

script: を実行しようとすると、次testのように表示されます。

sh: test: No such file or directory

そこにファイルが表示され、実行bash testまたはsh test動作すると..

何が問題ですか ?

4

1 に答える 1

1

これはシェルの組み込みコマンドであるため、「テスト」と呼ばないでください。シェルは、外部ユーティリティより優先して内部ビルトインを呼び出します。

名前を /system/bin/testx に変更して「testx」と呼び、それが機能するかどうかを確認します。

Android でよくあるその他の落とし穴: 「#!/system/bin/sh」と、ほとんどのディレクトリが「noexec」でマウントされています。ただし、いずれにせよスクリプトを /system/bin/ に置くと、これらはどちらもスクリプトには適用されません。

于 2013-11-30T18:08:04.990 に答える