2017-05-24 12 views
0

シェルスクリプトの初心者です。以下の要件のコードを書くのを手伝ってください。 forループを使ってみましたが、うまくいきませんでした。aapt.exeでPython/shellスクリプトを実行すると、各APKName.apkをバッジします

  1. 私はフォルダ "ApkFiles" を持っているし、それは私がフォルダ

    echo nameOfEachApk >> minTarget.xls 
    aapt.exe d badging eachAPKName.apk | grep -E 'sdkVersion|targetSdkVersion' >> minTarget.xls 
    
内のすべてのこれらの.apkファイルに以下のコマンドを実行するために必要な100個の.apkファイル

  • を持っています

    私はすべての助けに感謝します。

  • 答えて

    0

    これはpythonフォルダがあるディレクトリを繰り返します。これをapkfilesディレクトリの.pyファイルに入れて実行するだけです。私はあなたの正確なセットアップを持っていないので、私はそれをテストすることはできませんが、それはあなたが求めているものを行う必要があります。私はシェルコマンドを呼び出しています方法の説明はsubprocess module

    +0

    驚くばかりを見てどのよう

    from subprocess import call import os # Get current working directory cwd = os.getcwd() # Get a list of files in the current working directory f = open("minTarget.xls") for apkFile in os.listdir(cwd): # These call commands will run the shell commands you need # The [:4] strips off the .apk from the file string call(["echo", apkFile[:-4], ">>", "minTarget.xls"], stdout=f) call(["aapt.exe", "d", "badging", apkFile, "|", "grep", "-E", "'sdkVersion|targetSdkVersion'", ">>", "minTarget.xls"], stdout=f) f.close() 

    を参照してください。当時はありがとうございました。 forループの下にある2行のコードの出力がminTarget.xlsファイルに移動していないことを除いて、完全に動作しています。それは端末自体に表示されているだけです。 – Ashok

    +0

    stdoutをminTarget.xlsというファイルにパイプするコードを編集しました。私はあなたが達成しようとしていることをすべきだと思います。 –

    +0

    ありがとう、ありがとう、それでもgrepingと出力をテキストファイルにダンプしていません。ありがとうございました! – Ashok

    関連する問題