Nếu bạn dành nhiều thời gian trên dòng lệnh, rất có thể bạn sẽ muốn tùy chỉnh môi trường shell của mình. Điều này có thể có nghĩa là tạo bí danh, thêm thư mục mới vào $PATH hoặc thay đổi giao diện của dấu nhắc shell.

Bạn có thể đã đi qua một số hướng dẫn mà họ nói để đặt cấu hình của bạn, hoặc trong .bashrc.bash_profile hoặc một tập tin cấu hình được đọc và thực hiện bởi bash shell.

Trong bài viết này, chúng ta sẽ nói về các tệp khởi động Bash và sự khác biệt giữa tệp .bashrc và .bash_profile.

Đăng nhập tương tác và shell không đăng nhập

Khi được gọi, Bash đọc và thực thi các lệnh từ một tập hợp các tệp khởi động. Những tệp nào được đọc phụ thuộc vào việc shell được gọi là shell đăng nhập tương tác hay shell không đăng nhập.

Một shell có thể tương tác hoặc không tương tác.

Nói một cách dễ hiểu, một shell tương tác là một shell đọc và ghi vào terminal của người dùng, trong khi một shell không tương tác là một shell không được liên kết với một terminal, giống như khi thực thi một tập lệnh.

Một shell tương tác có thể là shell đăng nhập hoặc không đăng nhập.

Một shell đăng nhập được gọi khi người dùng đăng nhập vào terminal từ xa qua ssh hoặc cục bộ hoặc khi Bash được khởi chạy với tùy chọn --login. Một shell tương tác không đăng nhập được gọi từ shell đăng nhập, chẳng hạn như khi nhập bash vào dấu nhắc shell hoặc khi mở tab đầu cuối Gnome mới.

Tệp khởi động Bash

Khi được gọi dưới dạng một shell đăng nhập tương tác, Bash sẽ tìm kiếm tệp /etc/profile và nếu tệp tồn tại , nó sẽ chạy các lệnh được liệt kê trong tệp. Sau đó tìm kiếm Bash cho ~/.bash_profile~/.bash_login và ~/.profile, theo thứ tự được liệt kê, và thực thi lệnh từ file có thể đọc đầu tiên được tìm thấy.

Khi Bash được gọi dưới dạng một shell tương tác không đăng nhập, nó sẽ đọc và thực thi các lệnh từ ~/.bashrc, nếu tệp đó tồn tại và nó có thể đọc được.

Sự khác biệt giữa .bashrc và .bash_profile

.bash_profile được đọc và thực thi khi Bash được gọi dưới dạng shell đăng nhập tương tác, trong khi .bashrc được thực thi đối với shell tương tác không đăng nhập.

Sử dụng .bash_profile để chạy các lệnh chỉ chạy một lần, chẳng hạn như tùy chỉnh biến $PATH môi trường .

Đặt các lệnh sẽ chạy mỗi khi bạn khởi chạy một trình bao mới trong file.bashrc. Điều này bao gồm bí danh và chức năng của bạn , lời nhắc tùy chỉnh, tùy chỉnh lịch sử , v.v.

Thông thường, ~/.bash_profile chứa các dòng như bên dưới nguồn của .bashrc. Điều này có nghĩa là mỗi khi bạn đăng nhập vào terminal, cả hai tệp đều được đọc và thực thi.

if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

Hầu hết các bản phân phối Linux đang sử dụng ~/.profile thay vì ~/.bash_profile. Các tập tin ~/.profile được đọc bởi tất cả shell, trong khi ~/.bash_profile chỉ bởi Bash.

Nếu bất kỳ tệp khởi động nào không có trên hệ thống của bạn, bạn có thể tạo tệp đó.

Phần kết luận

.bash_profile và .bashrc là các tệp chứa các lệnh shell được chạy khi Bash được gọi. .bash_profile được đọc và thực thi trên shell đăng nhập tương tác, trong khi .bashrc trên shell không đăng nhập.

Kiểm tra hướng dẫn sử dụng Bash để biết thêm thông tin về các tệp khởi động Bash .

Nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào, hãy để lại bình luận.

2.5 2 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments