Những .profile
ngày trở lại vỏ Bourne ban đầu được gọi là sh
. Vì shell GNU bash
là (tùy thuộc vào các tùy chọn của nó) là một superset của shell Bourne, cả hai shell đều có thể sử dụng cùng một tệp khởi động. Đó là, với điều kiện chỉ sh
các lệnh được đưa vào.profile
Ví dụ, alias
là một lệnh tích hợp hợp lệ bash
nhưng không xác định sh
. Do đó, nếu bạn chỉ có một .profile
trong thư mục nhà của bạn và đặt một alias
tuyên bố trong đó, sh
sẽ phàn nàn. Vì vậy, có một tệp cụ thể bash có các lệnh khởi tạo shell mà bash sẽ đọc nếu và chỉ khi không có .profile
tệp nào.
Trên thực tế, đó là một chút đơn giản hóa trong một số cài đặt và tôi không quen với Fedora. Trong bash, /etc/profile
được đọc bởi shell trước bất kỳ tệp nào trong thư mục chính của bạn. Nếu có một kịch bản khởi tạo trên toàn hệ thống, nó thường nói một cái gì đó như
if there is a $HOME/.profile:
source it
elseif bash is my shell and there is a $HOME/.bash_profile:
source that
Tại sao lại như vậy? Một nỗ lực tương thích qua nhiều thập kỷ phương ngữ vỏ. Tại sao hướng dẫn được viết theo cách đó? Vỏ Bourne thường không được sử dụng nhiều nữa và một số người thậm chí không biết rằng có vỏ nào khác giống Bourne hơn bash. Ngay cả khi cú pháp Bourne (giới hạn) được sử dụng để tương thích đa nền tảng lớn hơn, nó vẫn thường được chạy dash
hoặc bash trong chế độ tương thích POSIX. Thật vậy, nguồn shell Bourne thực tế có lẽ là một thành phần bản quyền của Unix System V dường như là tài sản của Novell nhưng tôi không biết họ đang làm gì với nó.
Đối với người dùng mới bắt đầu, sử dụng một trong hai $HOME/.profile
hoặc $HOME/.bash_profile
không phải cả hai và bạn sẽ ổn. Vì bạn đã có một .bash_profile
công việc với điều đó bởi vì nó có thể có những thứ cụ thể của hệ thống trong đó mà bạn cần cài đặt.