Computer >> Máy Tính >  >> Xử lý sự cố >> MAC

Cách loại bỏ Trình bao tương tác mặc định hiện là zsh. trên Mac?

Nếu bạn vừa thay đổi từ zsh thành bash hoặc cập nhật lên macOS Catalina / Big Sur / Monterey, bạn có thể nhận được thông báo là " Trình bao tương tác mặc định hiện là zsh. Để cập nhật tài khoản của bạn để sử dụng zsh, vui lòng chạy 'chsh - s / bin / zsh '. Để biết thêm chi tiết, vui lòng truy cập https://support.apple.com/kb/HT208050. "bất cứ khi nào bạn mở Terminal.

Apple đã thay đổi giao diện tương tác mặc định từ bash thành zsh kể từ macOS Catalina. Các phiên bản macOS sau này như macOS Monterey / Big Sur cũng có shell mặc định được định cấu hình thành zsh. Nếu shell mặc định của máy Mac vẫn là bash cũ hoặc bạn đặt Terminal mở bằng bash hoặc các shell khác khi chạy các hệ điều hành này, bạn sẽ thấy cảnh báo.

Bạn phải bối rối nếu không quen với Terminal và các shell tương tác. Nhưng đừng lo lắng, chúng tôi sẽ giúp bạn hiểu "Trình bao tương tác mặc định bây giờ là zsh." , hãy xóa nó và thay đổi giao diện tương tác mặc định trên Mac nếu bạn muốn.

Hướng dẫn về "Trình bao tương tác mặc định hiện là zsh." trên Mac:

  • 1. Điều gì hiện 'Trình bao tương tác mặc định bây giờ là zsh.' nghĩa là gì?
  • 2. Làm cách nào để loại bỏ 'Trình bao tương tác mặc định hiện là zsh.'?
  • 3. bash so với zsh dành cho Mac
  • 4. Câu hỏi thường gặp về 'Trình bao tương tác mặc định hiện là zsh.' trên Mac

'Trình tương tác mặc định bây giờ là zsh.' nghĩa là gì?

Có một số trình bao tương tác diễn giải và thực thi các lệnh chúng ta nhập vào Terminal trên Mac. Trong số đó, zsh (Z shell) và bash (Bourne lại shell) được sử dụng thường xuyên hơn.

Trên macOS Mojave trở về trước, bash là trình bao tương tác mặc định. Nhưng Apple đã bị mắc kẹt với phiên bản 3.2 của bash (phát hành năm 2006) trong một thời gian dài vì các phiên bản bash mới được cấp phép theo GPLv3, điều này hạn chế đối với các công ty như Apple ký mã riêng của họ. Tôi đoán đó là một phần lý do tại sao họ muốn thay đổi trình bao mặc định của macOS.

Bắt đầu từ macOS Catalina, zsh đã thay thế bash làm shell mặc định trên Mac vì nó tương thích nhất với bash và gần với chức năng của bash hơn. Apple cũng nhúng một cảnh báo vào Terminal để nhắc nhở những người dùng chưa chuyển sang zsh điều chỉnh và quảng bá bản cập nhật.

Nếu tài khoản người dùng của bạn được tạo trước macOS Catalina, vẫn có bash là shell mặc định hoặc bạn gọi bash shell trong khi máy Mac của bạn được đặt để sử dụng zsh, bạn sẽ thấy thông báo có nội dung "shell tương tác mặc định hiện là zsh. Để cập nhật tài khoản của bạn để sử dụng zsh, vui lòng chạy `chsh -s / bin / zsh`. Để biết thêm chi tiết, vui lòng truy cập https://support.apple.com/kb/HT208050." trong Nhà ga.

Làm cách nào để xóa' Trình bao tương tác mặc định hiện là zsh. '?

Nếu bạn không sử dụng Terminal thường xuyên, bạn có thể bỏ qua thông báo. Nếu không, bạn có thể xóa "Trình bao tương tác mặc định hiện là zsh." trên Monterey / Big Sur / Catalina với các phương pháp bên dưới.

  • Cách 1:Thay đổi trình bao mặc định thành zsh
  • Cách 2:Ẩn 'Trình bao tương tác mặc định hiện là zsh.' và tiếp tục sử dụng bash
  • Cách 3:Chuyển sang bản bash do Homebrew vận chuyển

Bạn nhấp vào nút bên dưới để chia sẻ các giải pháp này cho nền tảng yêu thích của bạn.

Cách 1:Thay đổi trình bao mặc định thành zsh

Bên cạnh các tình huống chúng tôi đã nêu ở trên, bạn cũng có thể gặp phải "Trình bao tương tác mặc định hiện là zsh." trên Mac khi chạy Python hoặc các tệp nhất định trong các thư mục trong VSCode. Nếu bạn đã sẵn sàng chấp nhận zsh như nhiều người khác đã làm, bạn có thể thay đổi trình bao tương tác mặc định trên Mac bằng cách sử dụng lệnh "Trình bao tương tác mặc định bây giờ là zsh." cảnh báo gợi ý.

Làm theo các bước bên dưới để chuyển shell sang zsh bằng Terminal:

  1. Mở Terminal nếu bạn chưa mở.
  2. Nhập lệnh sau và nhấn Enter.chsh -s / bin / zsh
  3. Nhập mật khẩu của bạn và nhấn Enter một lần nữa.
  4. Khởi động lại máy Mac của bạn để thay đổi có hiệu lực.

Ngoài ra, bạn có thể thay đổi bash thành zsh từ ngăn tùy chọn Người dùng &Nhóm.

Cách chuyển sang bash từ zsh từ Tùy chọn hệ thống:

  1. Nhấp vào menu Apple> Tuỳ chọn Hệ thống> Người dùng &Nhóm.
  2. Nhấn vào ổ khóa ở phía dưới bên trái, nhập mật khẩu của bạn và nhấp vào Mở khóa.
  3. Nhấp chuột phải vào tài khoản của bạn và chọn "Tuỳ ​​chọn Nâng cao". Cách loại bỏ Trình bao tương tác mặc định hiện là zsh. trên Mac?
  4. Chọn / bin / zsh từ trình đơn thả xuống bên cạnh "Khung đăng nhập". Cách loại bỏ Trình bao tương tác mặc định hiện là zsh. trên Mac?
  5. Nhấp vào OK.
  6. Khởi động lại máy Mac của bạn.

Bây giờ bạn đã quản lý để thay đổi trình bao tương tác mặc định trên Mac thành zsh, bạn sẽ không còn nhận được thông báo "Trình bao tương tác mặc định hiện là zsh."

Cách 2:Ẩn 'Trình bao tương tác mặc định hiện là zsh.' và tiếp tục sử dụng bash

Nếu bạn biết các lợi ích của zsh, chẳng hạn như tùy chỉnh nhiều hơn và tự động hoàn thành thông minh hơn, nhưng vẫn thích bash quen thuộc, bạn có thể ẩn 'Trình bao tương tác mặc định hiện là zsh.' bằng cách thêm một dòng mã (xuất BASH_SILENCE_DEPRECATION_WARNING =1) vào một trong các tệp sau:~ / .bash_profile, ~ / .profile hoặc ~ / .bashrc.

Cách loại bỏ thông báo khi thiết bị đầu cuối Mac hiển thị 'Trình bao tương tác mặc định hiện là zsh.':

  1. Mở Terminal.
  2. Nhập lệnh bên dưới và nhấn Enter để thêm dòng vào ~ / .bash_profile.touch ~ / .bash_profile &&echo "export BASH_SILENCE_DEPRECATION_WARNING =1">> ~ / .bash_profile

Nếu việc sửa đổi ~ / .bash_profile không thành công, hãy thay thế ~ / .bash_profile trong mã bằng ~ / .profile hoặc ~ / .bashrc và chạy lại lệnh. Thật kỳ lạ, một số người dùng đang sử dụng zsh cũng có thể nhận được cảnh báo khi mở một bảng điều khiển mới. Trong trường hợp đó, việc trở thành root và thêm dòng vào / etc / profile là đáng tin cậy hơn.

Loại bỏ "Trình bao tương tác mặc định hiện là zsh." trên Monterey / Big Sur / Catalina:

  1. Mở Terminal.
  2. Nhập lệnh sau và nhấn Enter để chỉnh sửa / etc / profile dưới dạng root.sudo nano / etc / profile
  3. Nhập mật khẩu của bạn và nhấn Enter.
  4. Nhấn vào mũi tên xuống để di chuyển con trỏ đến dòng trong "# .profile toàn hệ thống cho sh (1)".
  5. Sao chép và dán văn bản bên dưới vào dòng.export BASH_SILENCE_DEPRECATION_WARNING =1 Cách loại bỏ Trình bao tương tác mặc định hiện là zsh. trên Mac?
  6. Nhấn Control + X, sau đó nhập "y" để xác nhận thay đổi.
  7. Nhấn Enter để thoát nano.
  8. Đóng thiết bị đầu cuối.
  9. Khởi động lại máy Mac của bạn.

Cách 3:Chuyển sang bash do Homebrew vận chuyển

Nếu bạn muốn sử dụng bash mới hơn và loại bỏ 'Trình bao tương tác mặc định hiện là zsh.' trên Monterey / Big Sur / Catalina, bạn có thể chuyển sang bash đi kèm với Homebrew, vốn không có mã bao gồm trong bash của Apple để hiển thị cảnh báo. Sau khi cài đặt Homebrew trên Mac, bạn có thể sử dụng bash trong Homebrew, sau đó cập nhật lên bash mới nhất (hiện tại là 5.1.16).

Làm thế nào để loại bỏ "Trình bao tương tác mặc định bây giờ là zsh." trên Catalina / Big Sur / Monterey bằng cách cập nhật bash:

  1. Mở Terminal.
  2. Nhập lệnh bên dưới và nhấn Enter để cài đặt Xcode.xcode-select --install
  3. Nhấp vào Cài đặt để xác nhận cài đặt.
  4. Chờ quá trình hoàn tất.
  5. Nhập lệnh sau vào Terminal và nhấn Enter để cài đặt Homebrew./bin/bash -c "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  6. Có thể mất một lúc để Homebrew cài đặt và cập nhật.
  7. Nếu bạn nhận được cảnh báo rằng / opt / homebrew / bin không có trong PATH của bạn, hãy sao chép và dán lệnh mà Homebrew gợi ý và nhấn Enter để thêm Homebrew vào PATH của bạn.
  8. Chạy lệnh bên dưới để cập nhật bash:brew update &&brew install bash &&sudo chsh -s / usr / local / bin / bash $ (whoami)

Bạn đã chọn giải pháp nào? Nhấp vào nút bên dưới để chia sẻ bài đăng này với bạn bè của bạn!

bash so với zsh dành cho Mac

Giống như bash, zsh cũng có nguồn gốc từ họ "Bourne" của vỏ, vì vậy chúng trông giống nhau khi nhìn ra khỏi hộp. Nhưng zsh có thể tùy chỉnh và mở rộng hơn bash vì bạn có thể dễ dàng thêm các chức năng mới trên đó và có nhiều lựa chọn về plugin hơn.

Zsh được thiết kế để cải thiện sự tương tác của người dùng. Do đó, nó có nhiều tính năng không tồn tại trên bash hoặc hoạt động kém hiệu quả hơn trên bash, chẳng hạn như tự động hoàn thành, đánh dấu cú pháp, tự động sửa lỗi, số học dấu phẩy động và nhiều tính năng khác. Tuy nhiên, bash có lợi thế là trình bao mặc định của hầu hết các máy và máy chủ Linux, vì vậy nó vẫn được các lập trình viên sử dụng rộng rãi.

Nếu bạn là người dùng Mac trung bình thỉnh thoảng sử dụng Terminal, bạn có thể bỏ qua thông báo hoặc thay đổi shell thành zsh như Apple đã khuyên. Nếu bạn làm việc với các nền tảng khác nhau trong đó bash là shell phổ biến, bạn nên cân nhắc việc cập nhật bash với Homebrew. Nếu rơi vào khoảng giữa, bạn có thể chặn cảnh báo và tiếp tục sử dụng cảnh báo quen thuộc.

Câu hỏi thường gặp về 'Trình tương tác mặc định hiện là zsh.' trên Mac

Q:Trình bao tương tác mặc định trên Mac là gì? Một

Apple đã chuyển shell mặc định của macOS từ bash sang zsh kể từ macOS Catalina.

QTại sao macOS chuyển sang zsh? Một

Apple đã đưa ra quyết định thay đổi shell mặc định trên Mac vì bash của Mac bị mắc kẹt ở phiên bản 3.2 trong nhiều năm trong khi phiên bản bash mới nhất hiện tại là 5.1 và họ không có kế hoạch cập nhật nó vì phiên bản bash mới được cấp phép kinh doanh. -GPLv3 thân thiện. Zsh có các chức năng tương tự như bash nhưng có tính tương tác và tùy biến cao hơn nó, vì vậy Apple đã chọn thay đổi trình bao mặc định thành zsh.

QH làm cách nào để thay đổi trình bao tương tác mặc định của tôi trên Mac? Một

Bạn có thể thay đổi trình bao tương tác mặc định trên Mac bằng cách sử dụng Thiết bị đầu cuối hoặc ngăn tùy chọn hệ thống Người dùng &Nhóm. Ví dụ:nếu bạn muốn thay đổi zsh thành bash trên Mac, hãy thực hiện lệnh này:chsh -s / bin / bash trong Terminal sẽ thực hiện công việc. Ngoài ra, bạn có thể mở System Preferences> Users &Groups> nhấp chuột phải vào tên tài khoản của bạn> chọn Advanced Options> chọn bin / bash cho Login Shell.

QH làm cách nào để đặt zsh shell mặc định của tôi trên Mac? Một

Cách nhanh nhất để tạo zsh shell mặc định cho macOS của bạn là thực hiện lệnh:chsh -s / bin / zsh trong Terminal.