0

Androidを強化するスクリプトを作成しようとしています。私は成功していません!

私はエミュレーター経由で AVD を実行しており、ロードした Android シェルと bash シェルの両方でこれを試しました。以下に示すように、スクリプトは単純で、各コマンドは独立して正常に実行されますが、スクリプトでは実行速度が速すぎるか何かです。

上部にシバンがないことはわかっていますが、挿入したときのエラーが原因です。

私のスクリプトは次のとおりです。

echo             ANDROID
echo      HARDENING STARTED
device=/dev/block/mtdblock0
mount -o rw,remount $device /system
#removing files in the /system/xbin directory
rm  /system/xbin/tcpdump
rm  /system/xbin/su
#removing files in the /system/bin directory
rm  /system/bin/bootanimation
rm  /system/bin/dumpstate
rm  /system/bin/ping
rm  /system/bin/ping6
echo                    ANDROID
echo              HARDENING COMPLETE

これがエラーの原因である可能性があり、ディレクトリとファイルが確実に存在すると考えたため、すべてのインデントを削除しました。私はこれを3日間続けていますが、薄く着ています。

他のハンドセットのデバイスを選択するために最初にifステートメントがありましたが、エラーを減らすためにこれを取り出しました(そのため、マウントする代わりにデバイスを宣言します)。

エラーは次のとおりです。

             ANDROID
      HARDENING STARTED
mount: no such file or directory exist
, no such file or directorytcpdump   
, no such file or directorysu
, no such file or directoryootanimation
, no such file or directoryumpstate
, no such file or directorying
, no such file or directorying6

     ANDROID
 HARDENING COMPLETED

ディレクトリの後のマージに注意してください。これはタイプミスではありません。

ありがとうライアン

4

2 に答える 2

3

このファイルは Windows システムで編集したもので、DOS スタイルの行末 ( <cr><lf>) があります。Unix スタイルの行末マーカー ( <lf>) を使用するように変換すると、正常に動作するはずです。適切なプログラマーのエディターであれば、これを行うことができます。または、標準のコマンド ライン ツールを使用して行うこともできます。

ちなみに、シェルはインデントをまったく気にしません。これ:

echo Hello
echo world.

以下と同じです:

echo Hello
              echo world.
于 2013-01-16T13:46:51.003 に答える
1

行末を Unix スタイルに変更すると、すべての問題が解決します。

于 2013-08-12T01:56:36.110 に答える