2011-08-16 5 views
3

Je voudrais vérifier si un répertoire existe sur la carte SD d'un appareil Android en utilisant bash. Je suis conscient qu'une question similaire a répondu ici: Check if a directory exists in a shell script La différence est que quand je faisVérifiez si le répertoire existe sur Android sdcard avec bash

if [ -e /sdcard/myDir ]; then 
    # magic 
fi 

on vérifie si/sdcard/myDir existe sur mon ordinateur et non sur le téléphone. Comment puis-je vérifier si le dossier existe sur le téléphone?

Merci d'avance!

Répondre

3

Si je comprends bien essayer:

adb shell 

... et puis tapez vos commandes shell sur l'appareil. Je ne suis pas vraiment sûr si bash est disponible sur un appareil Android standard. Je parierais qu'il n'y a que des simples outils busybox installés. Notez également qu'il existe un nombre très limité de répertoires auxquels vous pourrez accéder de cette manière sur un périphérique non-rooté.

MISE À JOUR: Plus précisément, si vous avez besoin d'exécuter une sorte de script shell sur le périphérique distant, d'abord préparer le script, dire foo.sh puis Execute:

adb push foo.sh /sdcard/ 
adb shell sh /sdcard/foo.sh 

Cela devrait faire l'affaire.

+0

J'ai un script sur mon PC qui est censé demander si le dossier existe ou non. Je pense que la commande devrait être quelque chose comme 'if [adb shell -d $ myFolder]; puis \t adb shell rm -r "myfolder de $" \t \t fi' –

+0

Dans ce cas, créer un fichier foo.sh, qui contient: 'si [-d $ myfolder]; puis adb shell rm -r $ myfolder fi' et appuyez et exécutez-le sur l'appareil comme décrit. – pkk

3

Vous auriez pu faire ce qui suit:

if [ `adb shell "if [ -e /sdcard/myDir ]; then echo 1; fi"` ]; then 
    echo "Folder exists"; 
else 
    echo "Folder does not exist"; 
fi 
Questions connexes