Tại sao biến nhắc của bash được gọi là PS1?


49

Biến môi trường cho dấu nhắc bash được gọi PS1(thường được đặt trong ~ / .bashrc). PS1 có nghĩa là gì? Có máy PS3 không?

Câu trả lời:


58

PS1 là viết tắt của "Prompt String One" hoặc "Prompt Statement One", chuỗi dấu nhắc đầu tiên (mà bạn thấy ở một dòng lệnh).

Vâng, có một máy PS3 và hơn thế nữa! Xin vui lòng đọc này bài viết và Arch wiki và tất nhiên The Bash Reference Manual .


24
Tóm lại, PS2 dành cho các lệnh tiếp tục (những lệnh lấy nhiều hơn một dòng), PS3 dành cho nhập vào tập lệnh đang chạy và PS4 là để theo dõi / gỡ lỗi.
Ansgar Esztermann

2
@AnsgarEsztermann, bình luận của bạn cũng có thể là một câu trả lời (mà tôi sẽ bỏ phiếu).
maxschlepzig

1
Re: $ PS3. Một ví dụ về việc sử dụng nó là thay đổi lời nhắc của selectlệnh bằng cách cài đặt PS3, ví dụ. PS3="Select by typing the number: "
Peter.O

24

từ hơi khó hiểu từ Tài liệu tham khảo Bash

PS1 Chuỗi dấu nhắc chính. Giá trị mặc định là '\ s- \ v \ $'.

PS2 Chuỗi nhắc nhở phụ. tức là cho các lệnh tiếp tục (những lệnh lấy nhiều hơn một dòng). Giá trị mặc định là '>'.

PS3 Giá trị của biến này được sử dụng làm lời nhắc cho lệnh select. tức là cho đầu vào vào một kịch bản đang chạy. Nếu biến này không được đặt, lệnh select sẽ nhắc với '#? '.

PS4 Giá trị là lời nhắc được in trước khi dòng lệnh được lặp lại khi tùy chọn -x được đặt. Ký tự đầu tiên của PS4 được sao chép nhiều lần, khi cần thiết, để biểu thị nhiều cấp độ gián tiếp. Mặc định là '+'.

PS1 và PS2 là từ sh gốc, PS3 và PS4 đã được thêm vào như một phần của bash

Xem ví dụ tại đây

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.