나는 현재 Linux 컴퓨터에 있고 쉘 프롬프트는 마지막 반환 값과 실행 된 명령 수를 보여줍니다 (그림이 포함되어 있으며 보라색으로 표시됨).
내 컴퓨터에는이 기능이 없습니다. 어떻게 구성 할 수 있습니까?
더 자세한 정보가 필요하면 Xubunto를 사용하고 있습니다. 저는 Linux 사용자가 아닙니다 (여기에서 무엇이 관련되어 있는지 모르겠습니다).
나는 현재 Linux 컴퓨터에 있고 쉘 프롬프트는 마지막 반환 값과 실행 된 명령 수를 보여줍니다 (그림이 포함되어 있으며 보라색으로 표시됨).
내 컴퓨터에는이 기능이 없습니다. 어떻게 구성 할 수 있습니까?
더 자세한 정보가 필요하면 Xubunto를 사용하고 있습니다. 저는 Linux 사용자가 아닙니다 (여기에서 무엇이 관련되어 있는지 모르겠습니다).
답변:
bash
Xubuntu의 기본 쉘 인 것 같습니다 .
.bashrc
또는 .bash_profile
시스템 구성에 따라 편집 하거나로 시작하는 줄을 찾으십시오 PS1=
. 이 줄은 프롬프트를 설정 합니다 .
마지막 명령의 반환 값을 추가하려면 해당 줄에 다음을 추가하십시오.
`echo -n $?`
예를 들어 다음과 같습니다 (현재 프롬프트가 단순화 됨).
PS1='\u in \w (`echo -n $?`)\n -> \$ '
_
커서로 다음 과 같이 보입니다 .
danielbeck in ~ (0)
-> $ _
또는 환경 변수 PROMPT_COMMAND
를 사용 하여 프롬프트에 리턴 코드를 추가 할 수 있습니다 .
export PROMPT_COMMAND='RET=$?; echo -n "($RET) "'
예를 들어 (0)
수정되지 않은 프롬프트 바로 앞에 추가 됩니다.
\#
프롬프트 에 추가하여 "카운터"를 얻습니다 . 명령 번호 입니다. 더 유용한 히스토리 번호 는 1부터 시작하지 않지만 느낌표와 명령의 히스토리 번호를 입력하여 명령을 실행할 수 있습니다.
984 $ foo
-bash: foo: command not found
985 $ !984
foo
-bash: foo: command not found
986 $ _
몇 가지 추가 연주 후 :
PS1='`RET=$?; if [ $RET != 0 ] ; then echo "rc $?"; fi`\n\u in `pwd`\n#\# !\! \$ '
이것은 0이 아닌 경우 자체 줄에 반환 값만 표시합니다. 명령 번호와 내역 번호는 입력하려는 명령과 같은 줄에 있습니다.
danielbeck in /Users/danielbeck/Downloads
#1 !984 $ foo
-bash: foo: command not found
rc 127
danielbeck in /Users/danielbeck
#2 !985 $ _
변수 $?
에는 마지막 실행 프로그램의 종료 코드가 포함됩니다.
ninth:~ sakkaku$ echo Hello World
Hello World
ninth:~ sakkaku$ echo $?
0
ninth:~ sakkaku$ cat asdasd
cat: asdasd: No such file or directory
ninth:~ sakkaku$ echo $?
1
증분기를 사용하여 "실행 된 명령 수"를 얻을 수 있다고 생각합니다.
ninth:~ sakkaku$ echo $[numcommands++]
0
ninth:~ sakkaku$ echo $[numcommands++]
1
ninth:~ sakkaku$ echo $[numcommands++]
2
ninth:~ sakkaku$ echo $[numcommands++]
3
그런 다음 프롬프트를 변경하려면 .bashrc에서 PS1 / PS2 변수를 수정해야합니다. 이것은 괜찮은 가이드처럼 보입니다 (/ etc / bashrc 수정을 권장하는 것을 제외하고 ~ / .bashrc 만 수행합니다).