Làm thế nào để bạn thực hiện các thay đổi màu sắc nhắc nhở Bash khi đăng nhập vào một máy chủ?

Mục lục:

Làm thế nào để bạn thực hiện các thay đổi màu sắc nhắc nhở Bash khi đăng nhập vào một máy chủ?
Làm thế nào để bạn thực hiện các thay đổi màu sắc nhắc nhở Bash khi đăng nhập vào một máy chủ?

Video: Làm thế nào để bạn thực hiện các thay đổi màu sắc nhắc nhở Bash khi đăng nhập vào một máy chủ?

Video: Làm thế nào để bạn thực hiện các thay đổi màu sắc nhắc nhở Bash khi đăng nhập vào một máy chủ?
Video: PHD | Troll Pháo Pokemon Lúc Đang Ị | Bom Pokemon - YouTube 2024, Tháng tư
Anonim
Nếu bạn truy cập nhiều máy chủ trong suốt ngày làm việc, sau đó có thể cho biết bạn đang làm việc với cái nhìn nào dựa trên một bảng màu có thể rất hữu ích. Bài đăng Hỏi & Đáp của SuperUser hôm nay giúp người đọc đạt được một niết bàn đầy màu sắc trong môi trường làm việc của mình.
Nếu bạn truy cập nhiều máy chủ trong suốt ngày làm việc, sau đó có thể cho biết bạn đang làm việc với cái nhìn nào dựa trên một bảng màu có thể rất hữu ích. Bài đăng Hỏi & Đáp của SuperUser hôm nay giúp người đọc đạt được một niết bàn đầy màu sắc trong môi trường làm việc của mình.

Phiên Hỏi & Đáp hôm nay đến với chúng tôi theo lịch sự của SuperUser - một phân khu của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.

Câu hỏi

Người đọc siêu người dùng nitins muốn biết làm thế nào để thay đổi màu sắc của Dấu nhắc Bash khi đăng nhập vào máy chủ:

Is there a way to make the Bash Prompt dynamic so that it changes color when I am logged into a server? I want the color to be green when using my own personal system, but change to red whenever I am connected to servers. I have a huge number of servers that I access and do not want to have to put a different .bashrc on each and every one of them.

Làm thế nào để bạn thay đổi màu sắc của Dấu nhắc Bash khi đăng nhập vào máy chủ?

Câu trả lời

Người đóng góp SuperUser Matei David có câu trả lời cho chúng tôi:

Remote Bash Prompts are set by the remote ~/.bashrc, so you will still need to copy it to the remote servers. However, you can use a single ~/.bashrc for all hosts and set the Bash Prompt color based on the host name:

Image
Image

Notes

  • Do not set PS1 if it is not already set (i.e. if the shell is not interactive). Testing to see if PS1 is “non-empty” is a very common way to find out if the shell is interactive and you do not want to confuse programs that do that (arguably, a more accurate test is checking to see if $- contains i).
  • If you want this code to run when logging into a remote server, you should have one of the profile files always source ~/.bashrc (I am assuming you know that).
  • In PS1, the escape codes must be enclosed in […].
  • [033[m resets the foreground and background to their defaults, so here :w appears in the terminal foreground/background.
  • [033[48;5;XXXm33[38;5;YYYm sets the background/foreground to XXX/YYY.
  • For a script that dumps the available colors, try colortest.
  • To check and see what the Bash Prompt would look like, use: echo -e “<33[48;5;16m33[38;5;196mhost33[m:dir>$ “

Có cái gì để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange có hiểu biết công nghệ khác? Xem toàn bộ chuỗi thảo luận tại đây.

Tín dụng hình ảnh: Emx (Wikipedia)

Đề xuất: