차이점은 무엇이며 ~/.profile
그리고 ~/.bash_profile
?
차이점은 무엇이며 ~/.profile
그리고 ~/.bash_profile
?
답변:
는 .profile
(일명 Bourne 쉘 원래 프로파일 구성되었다 sh
). bash
Bourne 호환 쉘인 경우이를 읽고 사용합니다. .bash_profile
반면에 만 읽습니다 bash
. 표준 Bourne 쉘과 호환되지 않는 명령을위한 것입니다.
.profile
. 예, bash
그리고 ksh
하지만 csh
나 tcsh
. 그리고 zsh
모두 제공 sh
하고 csh
이 모두를 읽을 수 있도록 호환성 .profile
및 .login
뿐만 아니라 zsh
특정 점 파일을.
시작시 원본 sh
소스 .profile
.
bash
.bash_profile
먼저 소스를 시도 하지만 존재하지 않는 경우 .profile
1 소스가됩니다 .
경우 참고 bash
로 시작됩니다 sh
(예 /bin/sh
에 대한 링크입니다 /bin/bash
) 또는 시작되는 --posix
플래그, 그것은 모방을 시도 sh
, 만 읽고 .profile
.
각주 :
.bash_profile
, .bash_login
,.profile
또한보십시오:
UNIX 세계에는 많은 쉘이 있지만 대부분은 다음과 같습니다.
/bin/sh
(발명가 : Stephen Bourne)/bin/bash
(Inventor : Brian Fox, GNU 프로젝트) (강한 쉘)/bin/csh
(발명가 : Bill Joy, TCP / IP Stack의 발명자)/bin/ksh
(발명가 : Bell Labs의 David Korn)/bin/zsh
(강력한 쉘)/bin/tcsh
( C 쉘 에서 파생 됨)/bin/dash
(Almquist 쉘 (NetBSD 프로젝트에서 애쉬)에서 파생 됨) (lenny에서 태어난 대시)그러나 귀하의 질문 에 관한 것입니다 ~/.bash_profile
과 ~/.profile
:
UNIX 시스템에 로그인하면 다음 /etc/passwd
과 같은 마지막 필드에서 관리자가 선택한 쉘에 따라 홈 디렉토리로 경로 재 지정 됩니다.
mohsen:x:1000:1000:Mohsen Pahlevanzadeh,,,:/home/mohsen:/bin/bash
쉘은 실행하고, 기본적으로 각 쉘의 설정 파일을 가지고 login
와 logout
. 당신이 떠들썩한 파티에 로그인 할 때 ~/.profile
실행하면 때 logout
, ~/.bash_logout
실행됩니다.
~/.bash_history
파일은 입력 명령을 유지합니다.
~/.login
로그인 할 때~/.logout
로그 아웃 할 때~/.tcshrc
~./bashrc
bash에서 와 동일변수 $histfile
는 히스토리 파일 이름으로, 변수 $history
는 유지할 명령 수로 설정할 수 있습니다 .
실제로 강력한 셸이며 자유 시간이 있으면 마이그레이션하십시오.
다른 쉘을 제외하고 Z 쉘에는 많은 구성 파일과 초기화 파일이 있습니다.
$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout
/tmp/zsh*
/etc/zshenv
/etc/zprofile
/etc/zshrc
/etc/zlogin
참고 : $ZDOTDIR
설정이 해제되면 홈 세트입니다.
참고 : TENEX C 쉘은 C 쉘에서 분기되었습니다. C 쉘은 BSD에서 지원합니다. C 언어 프로그래밍에 익숙하다면 구문이 비슷하므로 편안해야합니다.
~/.login
~/.cshrc
~/.logout
참고 : csh는 오래되었습니다. 대신 tcsh를 사용하십시오.
~/.profile
그것은 매우 강력한 쉘이며 GNU 프로젝트에서 태어 났으며 Bourne Shell이 포크했습니다.
~/.bash_login
~/.bash_logout
~/.bashrc
~/.bash_profile
~/.bash_history
로그인하면 bash가 실행 ~/.bash_profile
되고 ~/.bash_profile
실행됩니다 ~/.bashrc
. 사실 ~/.bashrc
bash는 그것을 실행하지 않기 때문에 bash는 초기화 파일이 없습니다.
죽었어 을 사용할 때도 man sh
매뉴얼이 dash
있습니다. [편집자 주 : 비트는 dash
우분투와 같은 데비안 및 데비안 기반 배포판에만 적용됩니다.]
~/.bash_profile
bash에서는 ~/.profile
작동 하지만 Bourne 및 Korn 쉘 에서는 작동합니다.
로그인 쉘은 단순히 ssh 또는 콘솔에서 로그인 할 수있는 쉘입니다. 비 로그인 쉘은 누군가 로그인 할 수없는 쉘입니다. 비 로그인 쉘은 종종 프로그램 / 시스템 서비스에서 사용됩니다.
세 번째 요점은 사실이다 .bashrc
쉘의 각 인스턴스에서 실행됩니다. 그러나 .bash_profile
로그인시에만 사용됩니다. 따라서 두 개의 개별 파일에 대한 이유입니다.
.profile
환경 변수 $ PATH와 같이 Bash와 특별히 관련이없는 것들을 위해 언제든지 사용할 수 있어야합니다. .bash_profile
특히 로그인시 실행되는 로그인 쉘 또는 쉘용입니다.