Ngày này sao cho lịch sử một chút quanh co của Unix (Wikipedia có một sơ đồ đơn giản , đó là xa từ đầy đủ). Đặc biệt, trong một thời gian, có hai dòng chính: Hệ thống V được phát triển bởi AT & T và BSD được phát triển tại Đại học California, Berkeley. Điều này là vào khoảng đầu những năm 1980, rất lâu trước Linux (1991), chứ chưa nói đến Ubuntu (2004). Thông thường, hai dòng điện này đã đưa ra các quyết định khác nhau và thậm chí ngày nay bạn sẽ tìm thấy các tài liệu tham khảo không thường xuyên về các biến thể hoặc tính năng của hệ thống V V và và BSD.
Các ps
ngày lệnh sao lưu từ một trong những phiên bản đầu tiên của Unix (nó không phải là trong phiên bản 1, trang người đàn ông đầu tiên tôi có thể tìm thấy trực tuyến là từ phiên bản 5 (p.94) vào năm 1974). Vào thời điểm đó, ps
chỉ có một vài tùy chọn, ví dụ như ps a
sẽ hiển thị tất cả các quy trình thay vì chỉ người dùng và ps x
sẽ hiển thị các quy trình không có thiết bị đầu cuối kèm theo. Bạn sẽ lưu ý rằng các tùy chọn không bắt đầu bằng -
: tại thời điểm đó, quy ước sử dụng -
cho các tùy chọn không phải là hệ thống gần như ngày nay, chủ yếu là các lệnh lấy tên tệp làm đối số bình thường.
Theo thời gian, các chuỗi khác nhau của Unix mở rộng ps
với nhiều tùy chọn hơn. Các biến thể BSD đã chọn để giữ lại các cú pháp gốc, không có lãnh đạo -
, và a
và x
vẫn còn tồn tại ngày nay. Biến thể System V đã chọn áp dụng quy ước cú pháp -
cho các tùy chọn và sử dụng các chữ cái khác nhau (ví dụ ps -e
để hiển thị tất cả các quy trình). Oracle (trước đây là Sun) Solaris là một ví dụ về biến thể System V (Solaris cũng gửi một ps
tệp thực thi riêng , trong một thư mục không có mặc định PATH
, dành cho các ứng dụng được viết bằng BSD).
Vào thời điểm Linux xuất hiện, những người sử dụng nó thường có kinh nghiệm trước đó về một biến thể Unix hoặc một biến thể khác. Linux đôi khi làm mọi thứ theo cách System V, đôi khi theo cách BSD, đôi khi theo cách riêng của mình, dựa trên những cân nhắc kỹ thuật hoặc dựa trên kinh nghiệm và thị hiếu của bất cứ ai triển khai tính năng này. ps
Lệnh của Linux bắt đầu với các tùy chọn giống BSD, ví dụ: ps ae
để hiển thị tất cả các quy trình và bao gồm các biến môi trường trong danh sách. Theo thời gian (vào cuối những năm 1990, tôi không nhớ chính xác là khi nào), các tác giả của Linux đã ps
thêm các tùy chọn cho những người đã quen với System V. Vì vậy, hôm nay ps ax
hoặc ps -e
sẽ liệt kê tất cả các quy trình trong Linux và thậm chí còn có một biến môi trường ( PS_PERSONALITY
) để thực hiệnps
hành xử giống như các biến thể Unix cũ Unix khác nhau, vì lợi ích của các tập lệnh cũ và những người có thói quen thiết lập.
Những người đã sử dụng một số biến thể Unix không thích rằng họ phải sửa đổi chương trình và thói quen của họ khi chuyển từ biến thể Unix này sang biến thể khác. Vì vậy, đã có một nỗ lực để chuẩn hóa một tập hợp con của chức năng. Điều này dẫn đến tiêu chuẩn POSIX (dẫn đầu bởi IEEE ), mà Ubuntu theo và lớn theo sau. Phiên bản đầu tiên có phạm vi bao gồm ps
lệnh ra đời vào năm 1992; cái này không có sẵn trực tuyến, nhưng phiên bản 1997 thì có. Đối với ps
lệnh, giống như trong nhiều trường hợp khác, POSIX đã áp dụng cách thức System V để thực hiện.
Các ps
cú pháp tiêu chuẩn của lệnh là một trong đó là tương thích với cả hệ thống V và POSIX. Ngoài ra, cú pháp đó có thể được coi là tiêu chuẩn vì nó sử dụng -
để giới thiệu các tùy chọn theo mặc định. Một số tùy chọn chỉ tồn tại ở một trong hai cú pháp; may mắn thay, chúng có thể được trộn lẫn trong cùng một cuộc gọi.
Nói chung, hệ thống BSD và vs hệ thống Vv không có bất kỳ ý nghĩa kỹ thuật nào. Nó đề cập đến lịch sử: BSD và bất cứ sự lựa chọn nào mà BSD đưa ra vào những năm 1980 và sau đó, hệ thống V V là bất cứ sự lựa chọn nào mà AT & T và các đối tác của họ (đặc biệt là Sun) đưa ra. POSIXIX là bất cứ sự lựa chọn nào mà ủy ban tiêu chuẩn hóa của IEEE đưa ra.
ps
optargs là đứng ở rìa của một vực thẳm Man Man Not Mete to know.