Hóa ra tính năng này không dành riêng cho Apple. Đây là một tính năng của các hệ thống BSD nói chung.
/* Root is -A automatically. */
if (!getuid())
f_listdot = 1;
Ban đầu, tôi có thể theo dõi nó trở lại các nguồn của 4.4BSD-Lite . Nó đã có mặt trong bản cam kết FreeBSD này từ năm 1994 đang nhập các nguồn đó.
Tính năng này cũng có trong OpenBSD và có thể được tìm thấy trong cam kết này từ năm 1995, tuyên bố sẽ nhập mã từ NetBSD, vì vậy điều này đã có trong NetBSD .
Sau đó, người ta phát hiện ra cam kết của NetBSD từ năm 1993 tuyên bố sẽ nhập mã từ 386BSD và tính năng này đã có sẵn . Hơn nữa, cam kết này cho thấy rằng nó đã ở đó trong quá trình phát triển phiên bản 386BSD 0.0 vào năm 1991, rẽ nhánh từ BSD khoảng 4.3, theo như tôi có thể nói.
Nhận xét này xuất hiện lần đầu tiên trong quá trình phát triển 4.3BSD-Reno trong cam kết này (27 tháng 6 năm 1989) mang tên Phiên bản làm việc đầu tiên của ls mới. Nhận xét ban đầu cho biết:
/* root sees all files automatically */
đã được thay đổi sau ngày hôm đó (tuy nhiên tôi không chắc dấu thời gian hoàn toàn chính xác trong kho lưu trữ này) thành:
/* root is -A automatically */
Và chỉ trong năm 1992, chữ in hoa và thời kỳ được thêm vào để biến nhận xét thành những gì chúng ta có bây giờ:
/* Root is -A automatically. */
Nhưng hành vi đã có mặt trong 2BSD kể từ ngày 9 tháng 5 năm 1979 như đã thấy trong ảnh chụp nhanh này :
Aflg = getuid() == 0;
Tôi không thể tìm thấy bất kỳ lịch sử thực tế nào từ thời đó, nhưng cũng có ảnh chụp nhanh 1BSD từ năm 1977 mà không có những dòng này. Và không có -A
cờ thực sự.
Vì vậy, có vẻ như tính năng này đã được giới thiệu ở đâu đó giữa tháng 11 năm 1977 (1BSD đang được phát triển tại thời điểm đó) và phát hành 2BSD vào tháng 5 năm 1979.
Điều tôi cũng tìm thấy trong cuộc điều tra này, là -I
lá cờ đã được thêm vào FreeBSD năm 2005 để ghi đè hành vi này và được làm lại một lát sau đó.