Tôi còn khá mới đối với lập trình nói chung và một số hướng dẫn đã bảo tôi sử dụng ls -l
để xem các tệp trong một thư mục và những người khác đã nói ll
. Tôi biết đó ls
là một danh sách ngắn, nhưng có sự khác biệt giữa hai cái kia không?
ls
bất kỳ lệnh nào khác tôi đưa vào shell là gì? Nếu tôi gõ which ls
tôi nhận được alias ls='ls --color=auto' /bin/ls
, nhưng nếu tôi gõ (ví dụ) which cd
tôi nhận được /usr/bin/which: no cd in (........)
. EDIT: Tôi đã thử lại lần nữa which mkdir
và tôi đã nhận được /bin/mkdir
. Sự khác biệt giữa các lệnh này mà một số trong số chúng được lưu trữ (?) Trong /usr/bin
và một số rõ ràng là không?
$PATH
. ls
rất thường được đặt bí danh, vì vậy trình bao của bạn báo cáo bí danh (được ưu tiên so với nhị phân) và vị trí thực tế của nhị phân (trong trường hợp của bạn, /bin/ls
). Nếu which
không thể tìm thấy cd
, thì một cái gì đó xuất hiện sai lầm khủng khiếp.
cd
là một từ khóa shellin, không phải là một chương trình được tìm thấy trong một hệ thống tập tin. Sử dụng type cd
và type ls
để xem những gì tôi có ý nghĩa. Một số lệnh đơn giản được ghi đè bởi các nội dung shell: echo
tồn tại trong /bin/echo
, nhưng bash
trên thực tế hầu hết các shell hiện đại, một echo
hàm dựng sẵn được gọi thay thế (thường có các tính năng mở rộng). type
thực sự cho bạn biết đó là cái gì
which ll
. Bạn có thể sẽ khám phá ra rằng đóll
thực sự là một bí danh chols -l
.