2013-02-22 3 views
0

i ma пишет java-программу для запуска сценария sh. для установки многих apk на многих устройствах в среднем. но у меня есть некоторые проблемы с моим скриптом, и я не знаю почему. код скриптакак ls - *. Apk?

#!/bin/bash 

checkParameter() { 

     echo "$1" 
     if [ -d $1 ]; then 
      echo "$1 est bien un repertoire" 
     else 
      echo "Vérifier si vous avez bien séléctionné un reperoire" 
     fi 

    } 
    # pour chercher les devices connectés 
devices(){ 
adb devices > devices.txt 
    } 

install(){ 
    echo "Debut de l'installation" 



     a=`ls $1 *.apk | wc -l` 

    for SERIAL in $(adb devices | tail -n +2 | cut -sf 1); 
    do 

     echo "le nombre des Applications à installer $a" 

     for APKLIST in $(ls $1 *.apk); 
     do 
      if [ $a -eq 0 ] 
      then 
       break; 
      fi 

      echo "Installatroning $APKLIST on $SERIAL" 
      #adb -s $SERIAL install $1/$APKLIST & 
     #adb bugreport > bug.txt 
     done 
     $a = `expr $a - 1` 
    done 
echo "La fin de l'Installation " 
} 




    checkParameter 
    devices 
    install 

echo 'exit normally' 

exit 0 

У меня есть проблема, что некоторые инструкции Unkown и сценарий никогда не закончена. он работает все время, пока я не нажать клавишу

a=`ls $1 *.apk | wc -l` unkown 

Выход:

est bien un repertoire 
Debut de l'installation 
./codes/adb.sh: ligne 24: =3 : commande introuvable 
le nombre des Applications à installer 
ls: impossible d'accéder à *.apk: Aucun fichier ou dossier de ce type 
expr: erreur de syntaxe 
./codes/adb.sh: ligne 41: = : commande introuvable 
La fin de l'Installation 
exit normally 
+0

При размещении кода, пожалуйста, исправить identation. Смешение вкладок и пробелов может не отображаться так же, как в вашем редакторе. – chepner

+0

Quand tu lances un script qui génère des erreurs, lance le comme ça: «LANG = C./Script' pour avoir les erreurs en Anglais =) –

ответ

6

Следующее утверждение неверно:

$a = `expr $a - 1` 

Там не должно быть пробелов вокруг =. Измените его на:

a=`expr $a - 1` 

В качестве альтернативы, вы можете также написать:

((a--))