Câu trả lời:
Trong lịch sử, shell Bourne ban đầu / bin / sh sẽ sử dụng $
như lời nhắc thông thường và #
cho lời nhắc người dùng root (và csh sẽ sử dụng %
). Điều này làm cho nó khá dễ dàng để biết bạn có đang chạy như siêu người dùng hay không.
#
cũng là nhân vật bình luận, vì vậy bất cứ ai nhập dữ liệu một cách mù quáng sẽ không chạy bất kỳ lệnh thực sự nào.
Các shell hiện đại hơn (ví dụ: ksh, bash) tiếp tục sự khác biệt này $
và #
mặc dù nó ít quan trọng hơn khi bạn có thể đặt các giá trị phức tạp hơn như tên người dùng, tên máy chủ, thư mục :-)
#
là nhân vật bình luận ngăn người khác chạy các lệnh thực sự nếu họ nhập lại dữ liệu một cách mù quáng?
# reboot
- trả lời ... không có gì, vì đó #
là một nhận xét.
Truyền thống.
Tiêu chuẩn POSIX nói (nhấn mạnh của tôi):
PS1
Biến này được sử dụng cho lời nhắc tương tác. Trong lịch sử, "siêu người dùng" đã có dấu nhắc '#'. Vì các đặc quyền không bắt buộc phải là nguyên khối, nên rất khó xác định đặc quyền nào sẽ gây ra dấu nhắc thay thế. Tuy nhiên, một người dùng đủ mạnh nên được nhắc nhở về sức mạnh đó bằng cách có một dấu nhắc thay thế.
Xem thêm câu trả lời này cho câu hỏi gần như tương tự trên diễn đàn SuperUser.