Computer >> Máy Tính >  >> Lập trình >> Lập trình BASH

Mẹo Unix Shell:Thay đổi Login Shell từ Bash sang Other

Câu hỏi: Làm cách nào để biết tôi đang chạy Unix shell nào? Bạn cũng có thể giải thích cách tôi có thể thay đổi trình bao Unix của mình cả tạm thời và vĩnh viễn không? (Ví dụ:từ bash sang tsh).

Trả lời: Bạn có thể đạt được những điều này bằng cách sử dụng $ 0, execute, chsh -s . Trong bài viết này, hãy cùng chúng tôi xem xét chi tiết cách thực hiện những điều này.

1. Unix shell hiện tại của tôi là gì?

Sử dụng lệnh echo $ 0 để lấy tên shell hiện tại của bạn như hình dưới đây.

$ echo $0
/bin/bash

2. Làm cách nào để thay đổi trình bao hiện tại của tôi thành một loại khác - tạm thời?

Sử dụng lệnh execute để thay đổi trình bao của bạn tạm thời như được hiển thị bên dưới.

$ echo $0
/bin/bash

$ exec /bin/sh

$ echo $0
/bin/sh

Lưu ý: Sự thay đổi trên là tạm thời. Khi bạn đăng nhập lại, bạn sẽ quay lại giao diện ban đầu.

3. Làm cách nào để thay đổi trình bao hiện tại của tôi thành một loại khác - vĩnh viễn?

Để thay đổi trình bao của bạn vĩnh viễn, hãy sử dụng chsh lệnh như hình dưới đây.

$ chsh -s /bin/sh
Password:

Lưu ý: Sự thay đổi trên là vĩnh viễn. Ngay cả sau khi đăng nhập lại, bạn sẽ chỉ thấy giao diện mới.

4. Làm cách nào tôi có thể tìm ra tất cả các shell có sẵn trong hệ thống của mình?

Tất cả các trình bao có sẵn đều nằm trong tệp / etc / shell.

$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
/bin/ksh93

Để thay đổi trình bao đăng nhập của bạn, bạn chỉ có thể thực hiện từ đầu ra ở trên. Nhưng để thay đổi giao diện hiện tại, bạn có thể chuyển đến bất kỳ trình bao hiện có nào.

5. Cài đặt Shell mới

Bạn có thể cài đặt một trình bao mới (ví dụ:ksh) như hình dưới đây. Sau khi cài đặt trình bao mới, bạn có thể sử dụng nó làm trình bao đăng nhập vĩnh viễn hoặc trình bao tạm thời cho các hoạt động dòng lệnh của bạn.

$ sudo apt-get install ksh