ฉันแค่พยายามเขียน bash shell สำหรับโทรศัพท์ Android ของฉัน
เมื่อฉันต้องการแสดงรายการไฟล์ทั้งหมดในโทรศัพท์ Android ของฉัน ฉันพบว่าเทอร์มินัลเชลล์ของ Android ไม่รองรับfind
คำสั่ง
เลยอยากทราบว่าวิธีไหนดีที่สุดในการเดินทางsdcard
ไฟล์?
ฉันแค่พยายามเขียน bash shell สำหรับโทรศัพท์ Android ของฉัน
เมื่อฉันต้องการแสดงรายการไฟล์ทั้งหมดในโทรศัพท์ Android ของฉัน ฉันพบว่าเทอร์มินัลเชลล์ของ Android ไม่รองรับfind
คำสั่ง
เลยอยากทราบว่าวิธีไหนดีที่สุดในการเดินทางsdcard
ไฟล์?
คำตอบ:
ฉันอาจจะคิดผิด แต่ "find -name __" ทำงานได้ดีสำหรับฉัน (อาจจะเป็นแค่โทรศัพท์ของฉัน) หากคุณต้องการแสดงรายการไฟล์ทั้งหมดคุณสามารถลองได้
adb shell ls -R /
คุณอาจต้องได้รับอนุญาตจาก root
แก้ไข: ในฐานะที่เป็นคำตอบอื่น ๆ แนะนำให้ใช้ls
ด้วยgrep
เช่นนี้
adb shell ls -Ral yourDirectory | grep -i yourString
เช่น.
adb shell ls -Ral / | grep -i myfile
-i
มีไว้สำหรับละเว้นกรณี และ/
เป็นไดเรกทอรีราก
find
คำสั่งแม้ว่าอุปกรณ์ที่มี ROMS แบบกำหนดเองหรือการติดตั้ง busybox อื่น ๆ อาจ
adb shell ls /storage
หรือadb shell ls -R --color=always /storage
เพื่อแสดงรายการจากไดเร็กทอรีที่อ่านได้
เปิดประเภท cmd adb shell
จากนั้นกด Enter พิมพ์ls
เพื่อดูรายการไฟล์
adb shell ls -R > junk
แสดงรายการไฟล์ทั้งหมดและใส่ผลลัพธ์ลงในไฟล์junk
ซึ่งคุณสามารถแก้ไขผ่าน Notepad หรืออะไรก็ได้และดูมากกว่าที่คุณต้องการ แต่ไฟล์ของคุณก็เช่นกัน!
เพียงแค่เพิ่มคำสั่งเต็ม:
adb shell ls -R | grep filename
นี่เป็นการค้นหาที่รวดเร็วใน Android
ls
เช่นนี้adb shell ls -laR | grep -E "filename|:$"
ls -lrta
คำสั่งนี้จะแสดงหากไฟล์ถูกซ่อน
adb shell ls -laR | grep filename
โทรศัพท์ Android บางรุ่นมี Busybox เป็นเรื่องยากที่จะหา
หากต้องการดูว่า busybox อยู่รอบ ๆ หรือไม่:
ls -lR / | grep busybox
ถ้าคุณรู้ว่ามันอยู่ใกล้ ๆ คุณต้องการพื้นที่อ่าน / เขียน ลองใช้แฟลชไดรฟ์ / sdcard
cd /sdcard
ls -lR / >lsoutput.txt
อัปโหลดไปยังคอมพิวเตอร์ของคุณ อัปโหลดไฟล์ รับโปรแกรมแก้ไขข้อความ ค้นหา busybox จะเห็นไดเร็กทอรีที่พบไฟล์.
busybox find /sdcard -iname 'python*'
เพื่อให้ busybox เข้าถึงได้ง่ายขึ้นคุณสามารถ:
cd /sdcard
ln -s /where/ever/busybox/is busybox
/sdcard/busybox find /sdcard -iname 'python*'
หรือสถานที่อื่น ๆ ที่คุณต้องการ ร