2012-10-26 5 views
5

Ich möchte überprüfen, ob es eine bestimmte Datei in einem Verzeichnis in meinem Android-Gerät ist.wie adb shell find Befehl im Batch zu verwenden

Ich verwende die folgende Zeile in meinem Windows-Batch-

adb shell find /mnt/sdcard/koinoxrista -name Bill.txt 

ich etwas tun will, wenn die Datei vorhanden ist und etwas anderes, wenn die Datei nicht existiert.

Wie kann ich das tun?

Antwort

1

Ich habe Angst, dass der Android-Emulator nicht mit dem "finden" -Programm bietet.

+0

Das ist ganz richtig - Android-Schiff nicht finden, und erst vor kurzem (möglicherweise nach diesem Schreiben) gestartet grep Versand, so ist es, warum downvote? –

1

Wenn Sie busybox auf Ihrem Gerät installiert haben, können Sie das busybox find applet verwenden. Auch bin ich mir nicht sicher von deiner Frage, ob du den genauen Dateinamen kennst. Wenn Sie nicht danach suchen müssen, prüfen Sie, ob es existiert. Mit einem Befehl wie

adb shell "[ -f /your/file ] && echo 'found'" 
+0

Ich habe BusyBox installiert, woher bekomme ich das Such-Applet? – AndroidGuy

7

Find Befehl wird nicht in ADB-Shell unterstützt. Dieser Befehl zeigt Ihnen auch versteckte Dateien an adb shell ls -laR | grep filename

+2

Dies gibt Ihnen nicht den Dateipfad, es wird nur berichtet, wenn es existiert. Um den Pfad zu erhalten, würde ich grep anweisen, auch jedes durch 'ls' gecrawlte Verzeichnis zu melden, wie folgt:' adb shell ls -laR | grep -E "Dateiname |: $" ' – volpato

+0

@volpato, Ich habe versucht, Ihren Vorschlag zu verwenden, aber immer noch kann ich nicht den vollständigen Pfad bekommen – ransh