내 홈 디렉터리에 다음 파일이 있습니다.
drwxr-xr-x 3 meuser staff 256 Oct 12 13:11 .
drwxr-xr-x 102 bin bin 4096 Sep 30 12:28 ..
-rw------- 1 meuser staff 5349 Oct 11 20:44 .bash_history
-rwx------ 1 meuser staff 466 Jun 26 22:12 .profile
-rw------- 1 meuser staff 7074 Oct 12 13:11 .sh_history
drwx------ 2 meuser staff 256 Aug 16 15:28 .ssh
내 기본 쉘은 Korn 쉘입니다. .profile
다음과 같이 별칭을 입력 하려고 하면 다음과 같습니다.
alias l='ls -lrt'
다시 로그인한 후 실행해 보세요.
$ l
ksh: l: not found.
이 별칭을 작동하게 하려면 어떻게 해야 합니까?
답변1
.profile
로그인한 경우에만 읽으세요. 향후 수정 사항은 현재 환경에 영향을 미치지 않습니다. 다음을 통해 다시 로드 해야 합니다 .profile
.
- 파일을 얻으십시오: (
. .profile
영향을 미칩니다현재의쉘이 아니라모두껍데기) su -l <user>
(새 로그인)- 로그아웃 + 로그인
답변2
실제로 작동한다.
내 .profile에서 볼 수 있는 유일한 차이점은 큰따옴표입니다.
alias l="ls -l"
이 줄은 AIX에서 ksh를 쉘로 사용할 때 적용됩니다.
연결 끊기 및 다시 연결과 관련하여...기본 쉘이 ksh인지 확실합니까? /etc/passwd에서 사용자를 확인하세요.
답변3
이것은 .profile
귀하의 쉘 프로필이 아닙니다. 이것은 귀하의 로그인 세션입니다.설정 파일. 로그인 세션 내에서 시작된 다른 대화형 쉘이 아닌 로그인 시 시작된 쉘에서만 읽을 수 있습니다.
ksh
자체적으로 전용 사용자 정의 파일은 없지만 변수를 $ENV
대화형 셸 세션에 대한 사용자 정의 파일의 경로로 처리합니다.
그래서 다음과 같은 것을 추가할 것입니다:
ENV="$HOME/.kshrc" export ENV
당신에게 다음을 제공합니다 ~/.profile
:
alias 'l=ls -lrt'
당신에게 ~/.kshrc
.
변경사항은 다음에 로그인할 때만 적용됩니다.
답변4
이 별명은 AIX 및 Korn 쉘에서 작동합니다.
like 끝에 몇 가지 명령을 추가하십시오 /etc/profile
.
export PS1="`hostname`# "
alias ll="/usr/bin/ls -lF $*"
alias h="history 50"
환경에서 이러한 변수를 설정하려면 다음을 실행하십시오.
. /etc/profile