차이점은 무엇이며 ~/.profile그리고 ~/.bash_profile?
차이점은 무엇이며 ~/.profile그리고 ~/.bash_profile?
답변:
는 .profile(일명 Bourne 쉘 원래 프로파일 구성되었다 sh). bashBourne 호환 쉘인 경우이를 읽고 사용합니다. .bash_profile반면에 만 읽습니다 bash. 표준 Bourne 쉘과 호환되지 않는 명령을위한 것입니다.
.profile. 예, bash그리고 ksh하지만 csh나 tcsh. 그리고 zsh모두 제공 sh하고 csh이 모두를 읽을 수 있도록 호환성 .profile및 .login뿐만 아니라 zsh특정 점 파일을.
시작시 원본 sh소스 .profile.
bash.bash_profile먼저 소스를 시도 하지만 존재하지 않는 경우 .profile1 소스가됩니다 .
경우 참고 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~./bashrcbash에서 와 동일변수 $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. 사실 ~/.bashrcbash는 그것을 실행하지 않기 때문에 bash는 초기화 파일이 없습니다.
죽었어 을 사용할 때도 man sh매뉴얼이 dash있습니다. [편집자 주 : 비트는 dash우분투와 같은 데비안 및 데비안 기반 배포판에만 적용됩니다.]
~/.bash_profilebash에서는 ~/.profile작동 하지만 Bourne 및 Korn 쉘 에서는 작동합니다.
로그인 쉘은 단순히 ssh 또는 콘솔에서 로그인 할 수있는 쉘입니다. 비 로그인 쉘은 누군가 로그인 할 수없는 쉘입니다. 비 로그인 쉘은 종종 프로그램 / 시스템 서비스에서 사용됩니다.
세 번째 요점은 사실이다 .bashrc쉘의 각 인스턴스에서 실행됩니다. 그러나 .bash_profile로그인시에만 사용됩니다. 따라서 두 개의 개별 파일에 대한 이유입니다.
.profile환경 변수 $ PATH와 같이 Bash와 특별히 관련이없는 것들을 위해 언제든지 사용할 수 있어야합니다. .bash_profile특히 로그인시 실행되는 로그인 쉘 또는 쉘용입니다.