내 파일에 내가 이해하지 못하는 작은 부분이 있는데 .bashrc
그 의미와 구문 설명을 묻고 싶습니다.
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
나는 #이 각 줄을 주석으로 만든다는 것을 확실히 이해합니다.
if ... then
이 말을 나에게 설명해 주실 수 있나요 ? 무슨 -f
뜻인가요?
[]
코드의 첫 번째 줄에 왜 이것이 있습니까?
;
왜 뒤에 하나가 있지 [ -f ~/.bash_aliases ]
?
코드의 두 번째 줄이 로 시작하는 이유 .
와 두 번째 줄 전체가 실제로 의미하는 바는 무엇입니까? Linux에 bash_aliases를 포함하는 파일이 있다는 것을 알고 있지만 .bash_aliases
두 번째 줄을 이해하지 못합니다.
답변1
if ... then
이 말을 나에게 설명해 주실 수 있나요 ?즉,
.bash_aliases
홈 디렉터리에 파일 이름이 있으면 해당 파일을 사용하십시오.무슨
-f
뜻인가요?:파일이 존재하고 일반 파일(디렉토리 등이 아님)인지 또는 일반 파일에 대한 심볼릭 링크인지 테스트합니다.
[]
코드의 첫 번째 줄에 왜 이것이 있습니까?테스트를 실행하는 데 사용되는 쉘 명령입니다. 또 다른 방법은
if test -f .bash_aliases; then
;
왜 뒤에 하나가 있지[ -f ~/.bash_aliases ]
?세미콜론은 bash의 명령 구분 기호입니다.
test
명령을 종료하고then
블록이 동일한 줄에서 시작되도록 허용하려면 이 정보가 필요합니다 .또는 구분 기호로 사용하는 것을 피하고
;
개행 문자를 사용하여 명령을 명시적으로 분할할 수 있습니다.if [ -f ~/.bash_aliases ] then
코드의 두 번째 줄이 a로 시작하는 이유
.
와 실제 의미실행할 명령의 이름입니다. (점) 명령은
.
파일 검색을 위한 쉘 내장 명령입니다.bash
파일이 실행될 것이라는 합리적인 가정을 통해.bashrc
더 읽기 쉽지만 POSIX가 아닌 명령을 대신 사용할 수 있습니다.source
.
source ~/.bash_aliases
일부 쉘(예: dash
일부 변형) 은 ksh
이를 지원하지 않습니다 source
.
당신은 읽고 싶을 수도 있습니다배쉬 문서.