Câu trả lời của jordanm là không chính xác. /etc/profilekhông có nguồn gốc bởi tất cả các vỏ. Như bạn chỉ ra, nó không có nguồn gốc bởi csh, tcsh- tôi không chắc chắn về điều đó zsh. Nó có nguồn gốc shtừ các dẫn xuất vỏ Bourne ( ), như Korn Shell ( ksh) và BASH ( bash). cshsử dụng /etc/login. Những người có xu hướng độc quyền sử dụng các dẫn xuất Borne Shell có xu hướng quên các vỏ khác tồn tại. Họ thêm một cái gì đó để /etc/profilemong đợi nó sẽ áp dụng cho "tất cả người dùng" và sau đó rất ngạc nhiên khi người dùng C Shell kỳ lạ (và chúng tôi là một số lẻ) không có nội dung họ định cấu hình /etc/profile.
Mặc dù vậy, mọi người có xu hướng quên đi các vỏ phái sinh Borne Shell khác tồn tại. Nếu họ sử dụng bashhoặc ksh, họ cảm thấy thoải mái khi thêm cú pháp vào /etc/profileđó không hợp lệ trong Bourne Shell, như nói việc xác định một biến và xuất nó trên cùng một dòng. Sau đó, bạn nhận được một số kịch bản đó #!/bin/shvà nó bóp nghẹt cú pháp. /etc/profilenên bám theo cú pháp tương thích của Bourne Shell.
Tương tự như vậy, bạn nên tự mình .profilesử dụng nó (sử dụng .bash_profilenếu bạn muốn một số cú pháp bash) - nó có thể là thêm một chút gõ, nhưng nó là gõ thêm bạn làm tất cả một lần. Tham khảo ${HOME}và không ~, v.v. Một số hương vị của Unix, cron job chạy theo sh, mỗi dòng của bạn Makefileđược xử lý sh, vì vậy nếu bạn đang làm việc trên nhiều hương vị của UNIX, thì thực sự phải trả tiền để giữ cho .profilevỏ Bourne của bạn tương thích. Là một SysAdmin, tôi không thể nói cho bạn biết tôi đã giúp ai đó bao nhiêu lần bằng cách sửa lỗi của họ .profileđể tương thích với Bourne Shell.
Trên Linux, /bin/shlà một liên kết đến /bin/bashvà khi bạn chạy nó, nó trông giống như một con đường được sử dụng để chạy nó và (về lý thuyết) chỉ giới hạn ở những thứ mà Bourne Shell hỗ trợ. Tương tự như vậy, vitrên Linux thực sự vim, một lần nữa tự giới hạn. Thỉnh thoảng bạn thấy các tính năng "chảy qua". Thỉnh thoảng vimgiả vờ visẽ làm một cái gì đó vimhỗ trợ mà vikhông phải vì các tác giả vimquên vô hiệu hóa điều này trong chế độ "tương thích ngược". Tôi sẽ không ngạc nhiên nếu bashgiả vờ shcó một số tính năng "chảy máu" tương tự. Sẽ không ngạc nhiên nếu một số tính năng "hoạt động trên Borne Shell trên Linux", nhưng không phải trên UNIX dựa trên System V hoặc BSD (AIX, OpenBSD, v.v.).
Does it have positive ... and understood.Bạn đang cố gắng nói điều gì ? Tôi hiểu mọi thứ khác ngoài đoạn đó.