나는 Linux 시작 등에 관해 몇 가지 내용을 읽었으며 내 홈 디렉토리에 폴더가 없다는 것을 알았습니다 profile.d
.
/home/user/profile.d/ # Doesn't exists
그리고 파일도 아닙니다 .bash_profile
:
/home/user/.bash_profile # Doesn't exists
이유가 있나요?
우분투 15.04, 그놈
답변1
짧은 답변:괜찮아요.
사용자가 콘솔, 대화형 또는 비대화형 셸, 다양한 종류의 셸을 사용하여 컴퓨터 계정에 로그인하기로 결정할 수 있기 때문에 많은 초기화 사용자 파일이 있습니다. 모든 사용자의 특권은 아니지만, 이를 유지해야 하는 필요성이 있습니다.하위 호환성복잡하게 끝났어조금것들. :-)
디렉토리
profile.d
홈 디렉토리 아래에 있어서는 안 됩니다.:
/etc/profile.d
시작 시 셸에서 실행되는 응용 프로그램별 시작 파일이 포함된 스크립트가 포함되어 있습니다. 이는 모든 사용자에게 유효한 디렉토리입니다. 이를 위해/etc/
각 단일 사용자 홈 디렉토리 아래가 아닌 경로 아래에 생성됩니다.파일은
~/.bash_profile
개인 초기화 파일 중 하나이며 존재하는 경우 각 사용자 홈에 저장됩니다.그러나 그것이 존재할 필요는 없습니다.여기에는 로그인 셸을 시작할 때 실행할 bash 관련 명령이 포함되어야 합니다(~/.profile
일반적으로 bash와 다른 구문을 이해하는 다른 셸에서도 읽을 수 있음).
INVOCATION
섹션 에서 더 읽어보기man bash
Bash가 대화형 로그인 셸로 호출되는 경우(...)먼저 파일에서 명령을 읽고 실행합니다.
/etc/profile
, 해당 파일이 존재하는 경우. 해당 파일을 읽은 후 , 및 를
찾습니다 .~/.bash_profile
~/.bash_login
~/.profile
그와 같은 순서로,그리고 읽고 존재하고 읽을 수 있는 첫 번째 명령부터 실행합니다..
따라서 파일이 있는 경우 다른 파일 중 하나에서 호출(또는 소스 제공)되지 않으면 ~/.bash_profile
해당 파일을 읽을 수 없습니다 .~/.profile
참고하세요
로그인 쉘이 아닌 대화형 쉘이 시작되면 bash는
/etc/bash.bashrc
및~/.bashrc
파일이 존재하는 경우에서 명령을 읽고 실행합니다.
Ubuntu 12의 일부 버전(그리고 확실히 13.10부터) .profile
에서는 ~/.bashrc
.
ssh
이로 인해 사용자가 소스를 제공할 것으로 예상하지 않는 로그인 셸을 실행할 때(예: 컴퓨터에 로그인 할 때) 예기치 않은 동작이 발생할 수 있습니다~/.bashrc
.
참조:
- Bash (그렇지 않음) 초보자 가이드에서쉘 초기화 파일
- Ubuntu의 기본 ~/.profile 소스가 ~/.bashrc인 이유는 무엇입니까?