Bagaimana cara daftar semua file di ponsel android dengan menggunakan adb shell?

91

Saya hanya mencoba menulis shell bash untuk Ponsel Android saya.
Ketika saya ingin daftar semua file di Ponsel Android saya. Saya menemukan bahwa terminal shell Android tidak mendukung findperintah.
Jadi saya hanya ingin tahu mana cara terbaik untuk membawa sdcardfile?

friddle
sumber
3
Perhatikan bahwa pada perangkat Android yang diamankan, pengguna shell tidak memiliki izin untuk mengakses banyak file dan mencantumkan banyak direktori. Pada emulator atau perangkat rekayasa yang menjalankan ADB sebagai root, akses ke perangkat ini menjadi mungkin.
Chris Stratton
saya tahu itu. tetapi saya hanya ingin melakukan perjalanan file sdcard. saya pikir itu tidak bisa melibatkan izin root. toh terima kasih!
Jumat

Jawaban:

129

Saya mungkin salah, tetapi "find -name __" berfungsi dengan baik untuk saya. (Mungkin hanya ponsel saya.) Jika Anda hanya ingin menampilkan semua file, Anda dapat mencoba

adb shell ls -R /

Anda mungkin membutuhkan izin root.

Edit: Seperti jawaban lain menyarankan, gunakan lsdengan grepseperti ini:

adb shell ls -Ral yourDirectory | grep -i yourString

misalnya.

adb shell ls -Ral / | grep -i myfile

-iadalah untuk kasus pengabaian. dan /merupakan direktori root.

pt2121
sumber
2
Sebagian besar perangkat android rilis resmi tidak memiliki findperintah, meskipun perangkat dengan ROM kustom atau penginstalan busybox lainnya mungkin.
Chris Stratton
1
ponsel saya tidak bisa mendapatkan izin root! saya sangat menyesal untuk itu. jika saya mendapatkan premisi root. saya akan menginstal busybox. busybox adalah alat yang sangat berguna
friddle
Jika Anda hanya menginginkan sdcard, ganti / dalam perintah ini dengan mountpoint dari sdcard di sistem Anda, dan tidak, Anda tidak perlu menjalankannya sebagai root.
Chris Stratton
Jika ponsel Anda tidak di-root, Anda dapat menggunakan adb shell ls /storageatau adb shell ls -R --color=always /storageuntuk mendaftar dari direktori yang dapat dibaca.
mchid
29

Buka jenis cmd adb shelllalu tekan enter. Ketik lsuntuk melihat daftar file.

fauzi
sumber
Pada prompt DOS, adb shell ls -R > junkdaftarkan semua file dan letakkan hasil ke dalam file junkyang kemudian dapat Anda edit melalui Notepad atau apa pun dan melihat lebih dari yang Anda inginkan, tetapi juga file Anda!
DSlomer64
4

hanya untuk menambahkan perintah lengkap:

adb shell ls -R | grep filename

ini sebenarnya adalah pencarian yang cukup cepat di Android

pemberontak
sumber
2
Ini tidak akan memberi Anda jalur file, ini hanya akan melaporkan jika ada. Untuk mendapatkan jalur, saya akan menginstruksikan grep untuk juga melaporkan setiap direktori yang dirayapi ls, seperti ini:adb shell ls -laR | grep -E "filename|:$"
volpato
1
Saya suka menggunakanls -lrta
john Smith
3

Perintah ini juga akan ditampilkan jika file disembunyikan adb shell ls -laR | grep filename

Misha
sumber
2

Beberapa ponsel Android berisi Busybox. Sulit ditemukan.

Untuk melihat apakah busybox ada di sekitar:

ls -lR / | grep busybox

Jika Anda tahu itu ada di sekitar. Anda membutuhkan ruang baca / tulis. Coba Anda flash drive, / sdcard

cd /sdcard
ls -lR / >lsoutput.txt

unggah ke komputer Anda. Unggah file. Dapatkan beberapa editor teks. Cari busybox. Akan melihat direktori tempat file ditemukan.

busybox find /sdcard -iname 'python*'

agar busybox lebih mudah diakses, Anda dapat:

cd /sdcard
ln -s /where/ever/busybox/is  busybox
/sdcard/busybox find /sdcard -iname 'python*'

Atau tempat lain yang Anda inginkan. R

cap sejarah
sumber