เมื่อadb shellถูกดำเนินการด้าน Android นอกจากนี้ยังเปิดตัว adb /system/bin/sh -แล้วรัน เส้นทางนี้เขียนโค้ดแบบยากในsystem/core/adb/services.c:
347 #if ADB_HOST
348 #define SHELL_COMMAND "/bin/sh"
349 #define ALTERNATE_SHELL_COMMAND ""
350 #else
351 #define SHELL_COMMAND "/system/bin/sh"
352 #define ALTERNATE_SHELL_COMMAND "/sbin/sh"
353 #endif
หากคุณต้องการเปลี่ยนสิ่งนี้เป็นทุบตีคุณจะต้องคอมไพล์ใหม่อีกครั้ง
เป็นไปได้ที่จะรันคำสั่งบางอย่างจากไฟล์เมื่อรันเชลล์แบบโต้ตอบ ตามที่เขียนไว้ในsystem/core/sh/main.c, sh -(หมายเหตุ-สำหรับโหมดโต้ตอบ) อ่านจากไฟล์ต่อไปนี้ (ในลำดับนี้):
/etc/profile
.profile(เทียบกับไดเรกทอรีปัจจุบันนี้มี/.profileไว้สำหรับadb shell
$ENV(ตัวแปรสภาพแวดล้อมENVควรชี้ไปที่ไฟล์)
ในฐานะที่เป็น/etc/และจะอ่านอย่างเดียววิธีเดียวที่จะได้รับสิ่งที่โหลดโดยการตั้งค่า/ ENVคุณสามารถสร้าง symlink ได้จาก/etc/profileไปที่/data/profileโดยติดตั้ง/อ่าน - เขียน (แบบฝึกหัดสำหรับผู้อ่าน)
shไม่ใช่bashเมื่อฉันใช้ adb เพื่อเชื่อมต่อ คุณกำลังสร้างสิ่งใด