Làm cách nào để đặt lại màu của thiết bị đầu cuối?


28

Cứu giúp! Bằng cách nào đó thiết bị đầu cuối của tôi trông như thế này:

nhập mô tả hình ảnh ở đây

Gần như không thể đọc văn bản. Làm thế nào tôi có thể sửa nó mà không cần thoát khỏi thiết bị đầu cuối?


Cái quái gì bạn đã làm để có được nó theo cách đó? xD
Lucio

4
Đôi khi bạn có thể "vô tình" có được điều này bằng cách sử dụng cattrên một tệp nhị phân.
Nathan Osman

2
Tôi vừa thử catmột tệp nhị phân, là một trải nghiệm tuyệt vời ...
Aditya

Câu trả lời:


34

Nguyên nhân có thể của vấn đề này là Mã thoát ANSI . Điều này cho phép các tập lệnh thay đổi màu nền trước và sau của thiết bị đầu cuối. Bạn thậm chí có thể bắt chước màu sắc của ảnh chụp màn hình ở trên bằng cách chạy lệnh sau:

echo -e '\E[32;46m'

Để đặt lại màu của thiết bị đầu cuối, sử dụng lệnh sau:

tput init

Theo trang hướng dẫn:

    init   Nếu cơ sở dữ liệu terminfo có mặt và một mục nhập cho người dùng
          thiết bị đầu cuối tồn tại (xem -Ttype, ở trên), sau đây sẽ xảy ra:

          (1) nếu có, chuỗi khởi tạo của thiết bị đầu cuối sẽ là
              xuất ra như chi tiết trong phần terminfo (5) trên Tab và
              Khởi tạo,

          (2) mọi sự chậm trễ (ví dụ: dòng mới) được chỉ định trong mục sẽ là
              thiết lập trong trình điều khiển tty,

          (3) mở rộng tab sẽ được bật hoặc tắt theo
              đặc điểm kỹ thuật trong mục, và

          (4) nếu các tab không được mở rộng, các tab tiêu chuẩn sẽ được đặt
              (cứ 8 chỗ trống).

          Nếu một mục nhập không chứa thông tin cần thiết cho bất kỳ
          Bốn hoạt động trên, hoạt động đó sẽ âm thầm
          bỏ qua

Điều này sẽ khôi phục thiết bị đầu cuối của bạn về màu sắc ban đầu của nó.


Bạn có thể đóng nó lại và mở lại không?
Sparhawk

Có, nhưng sau đó tất cả các biến môi trường của tôi sẽ bị mất.
Nathan Osman

Điểm tốt. +1.
Sparhawk

2
resetcũng sẽ hoạt động nhưng tôi nghĩ nó cũng sẽ thiết lập lại các biến môi trường.

Các resetlệnh sẽ không reset các biến môi trường.
Điểm_Under

12

Bạn cũng có thể thử lệnh này. Nó sẽ thiết lập lại màu thiết bị đầu cuối của bạn.

tput sgr0

nhập mô tả hình ảnh ở đây


4

Nếu bạn tìm thấy thiết bị đầu cuối của bạn ở trong tình trạng mà không ai trong số reset, tput init, và cũng không tput sgr0thể sửa chữa, cố gắng tput setaf 7 && tput setab 0để buộc các văn bản sang màu trắng trên nền đen.


1
điều này hoạt động trên thiết bị đầu cuối vscode của tôi khi các phương thức khác không hoạt động
Vorsprung

Cảm ơn! Điều này đã sửa nó trong thiết bị đầu cuối của tôi là tốt, vẫn hữu ích!
robbat2
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.