Tại sao các lệnh Linux không hoạt động đúng trên Android?


7
> adb shell
sh-4.1$ ls -F
-F: No such file or directory

-F Switch hoạt động tốt trên Ubuntu của tôi.

Tại sao nó không hoạt động trên Android? Có cách nào để làm cho nó hoạt động?

Câu trả lời:


10

Hầu hết các lệnh shell trong Android không phải là phiên bản GNU hoặc triển khai tuân thủ POSIX, chúng là từ Toolbox hoặc Busybox và hầu hết là các phiên bản bị loại bỏ.

Rất nhiều lệnh trong /system/binlà liên kết tượng trưng đến /system/toolbox. Tôi chưa tìm thấy nhiều tài liệu về nó, chỉ là nguồn tại https://android.googlesource.com/pl platform / system / core / + / jb-mr1-release / toolbox /

Busybox là một triển khai khác của một số lệnh shell phổ biến, với nhiều lệnh và tính năng hơn so với Toolbox mặc định. Nó cũng được sử dụng trên các hệ thống nhúng khác và một số đĩa CD GNU / Linux có thể khởi động, do đó bạn có thể đã quen với nó. Vì là nguồn mở, có một số trình cài đặt có sẵn trên Google Play: chỉ cần tìm kiếm "Busybox".



2
Nói một cách chính xác, các công cụ lệnh của người dùng GNU không phải là "bản gốc", chúng được thiết kế dựa trên các công cụ lệnh Unix và POSIX hiện có.
Lie Ryan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.