서버에 따라 다른 색상의 프롬프트를 받으려면 어떻게해야합니까?

올레 탄게

나는 ssh항상 사용 하지만 때때로 내가 어떤 서버에 있는지 잊어 버립니다.

동일한 .bashrc(/ home은 NFS 공유)을 사용하여 다른 서버에서 다른 색상의 프롬프트를 가질 수 있습니까? 서버를 나열하지 않는 것이 좋습니다.

올레 탄게

이 같은:

set_color_prompt() {
    _colorcombos() {
    PERL_HASH_SEED=109 perl -MB -e '
        use B;
        # color combinations that are readable (e.g. no red on red)
        @c =(map { "$_\n0\n" }
             6..7,9..11,13..15,40..51,75..87,113..123,147..159,171..231,249..254),
            (map { "$_\n231\n" }
             1..9,12..13,16..45,52..81,88..116,124..151,153,160..180,
             182..185,187..189,196..214,232..252,255..254);
        for(@ARGV) {
            print @c[hex(B::hash($_)) % $#c];
        }
        ' "$@"
    }
    local col=($(_colorcombos `whoami` `hostname` "`id`"))
    # (bg1,fg1)=user, (bg2,fg2)=host, (bg3,fg3)=path
    PS1='${debian_chroot:+($debian_chroot)}\[\033[48;5;'${col[0]}';38;5;'${col[1]}'m\]\u\[\033[00m\]\[\033[48;5;'${col[2]}';38;5;'${col[3]}'m\]@\h\[\033[00m\]:\[\033[48;5;'${col[4]}';38;5;'${col[5]}'m\]\w\[\033[00m\]\$ '
}

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
    set_color_prompt
    ;;
xterm-256color)
    set_color_prompt
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac

whoami, hostname및을 기준으로 컬러 프롬프트를 설정 id하므로 다른 사용자로 로그인하면 색상도 달라집니다.

whoami, hostnameid해시되고 해시 값에 따라 색상 조합이 선택됩니다. 조합을 테스트하여 읽을 수 있는지 확인합니다.

PERL_HASH_SEED=109다른 색상을 얻으려면 변경하십시오 (예 : 두 개의 중요한 서버가 동일한 값을 제공하는 경우).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

피쉬 쉘 프롬프트를 다른 색상으로 설정하려면 어떻게해야합니까?

분류에서Dev

다른 열의 값에 따라 팬더 열을 목록으로 바꾸려면 어떻게해야합니까?

분류에서Dev

Bash에서의 위치에 따라 큰 따옴표를 두 개의 다른 문자로 바꾸려면 어떻게해야합니까?

분류에서Dev

다른 행렬의 조건에 따라 행렬에 대한 for 루프를 작성하려면 어떻게해야합니까?

분류에서Dev

XSLT를 사용하여 다른 노드의 내용에 따라 XML 노드의 값을 얻으려면 어떻게해야합니까?

분류에서Dev

XSLT를 사용하여 다른 노드의 내용에 따라 XML 노드의 값을 얻으려면 어떻게해야합니까?

분류에서Dev

한 조건 자에 따라 두 목록의 요소를 비교하고 다른 조건 자에 따라 선택하려면 어떻게해야합니까?

분류에서Dev

다른 데이터 세트의 변수를 비교하고 RStudio에서 그에 따라 변수를 변경하려면 어떻게해야합니까?

분류에서Dev

네트워크의 다른 노드에 다른 색상을 할당하려면 어떻게해야합니까?

분류에서Dev

스프라이트를 화면의 오른쪽에서 왼쪽으로 직접 이동하려면 어떻게해야합니까?

분류에서Dev

Windows 10의 동일한 위치에있는 다른 cmd 프롬프트에서 cmd 프롬프트를 시작하려면 어떻게합니까?

분류에서Dev

getline 파이프 라인에서 명령의 종료 상태를 얻으려면 어떻게해야합니까?

분류에서Dev

크롬 확장 프로그램을 사용하여 웹 페이지의 onClick 이벤트에서 메시지를 받으려면 어떻게해야합니까?

분류에서Dev

조건에 따라 C # WPF TextBox를 다른 속성에 바인딩하려면 어떻게해야합니까?

분류에서Dev

둘 이상의 명명 된 파이프에서 메시지를 받으려면 어떻게해야합니까?

분류에서Dev

장치에 따라 다른 스토리 보드를로드하려면 어떻게해야합니까?

분류에서Dev

변수 값에 따라 다른 함수를 실행하려면 어떻게해야합니까?

분류에서Dev

클릭 한 대상에 따라 navigateToURL을 사용하여 사용자를 다른 URL로 보내려면 어떻게해야합니까?

분류에서Dev

한 열의 다른 범주에 따라 데이터 줄을 별도의 텍스트 파일로 추출하려면 어떻게해야합니까?

분류에서Dev

Selenium 웹 드라이버로 Windows 인증 프롬프트를 감지하려면 어떻게해야합니까?

분류에서Dev

각 화면에서 다른 메시지를 받으려면 어떻게해야합니까?

분류에서Dev

두 개의 개별 라우터 (하나는 인터넷 용 Wi-Fi, 다른 하나는 네트워크 드라이브 용 LAN)에 연결하고 인터넷 서비스를 계속 받으려면 어떻게해야합니까?

분류에서Dev

파이 게임에서 스프라이트를 다른 스프라이트에 "스탠드"로 만들려면 어떻게해야합니까?

분류에서Dev

Android 프로젝트에서 다른 API 버전을 빌드 대상으로 사용하려면 어떻게해야합니까?

분류에서Dev

Unity [c #]에서 게임을 시작할 때마다 임의의 위치에 스프라이트를 표시하려면 어떻게해야합니까?

분류에서Dev

32 비트 또는 64 비트 버전의 PowerShell에 따라 내 프로필의 일부를 제외하려면 어떻게해야합니까?

분류에서Dev

Leaflet지도에 마우스를 올려 놓을 때 다각형의 하이라이트 색상을 변경하려면 어떻게해야합니까?

분류에서Dev

Android 앱의 서버에서 JSON 데이터를 받으려면 어떻게해야합니까?

분류에서Dev

사용자 지정 bash 스크립트 내에서 다른 명령의 파이프 라인 출력을 사용하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    피쉬 쉘 프롬프트를 다른 색상으로 설정하려면 어떻게해야합니까?

  2. 2

    다른 열의 값에 따라 팬더 열을 목록으로 바꾸려면 어떻게해야합니까?

  3. 3

    Bash에서의 위치에 따라 큰 따옴표를 두 개의 다른 문자로 바꾸려면 어떻게해야합니까?

  4. 4

    다른 행렬의 조건에 따라 행렬에 대한 for 루프를 작성하려면 어떻게해야합니까?

  5. 5

    XSLT를 사용하여 다른 노드의 내용에 따라 XML 노드의 값을 얻으려면 어떻게해야합니까?

  6. 6

    XSLT를 사용하여 다른 노드의 내용에 따라 XML 노드의 값을 얻으려면 어떻게해야합니까?

  7. 7

    한 조건 자에 따라 두 목록의 요소를 비교하고 다른 조건 자에 따라 선택하려면 어떻게해야합니까?

  8. 8

    다른 데이터 세트의 변수를 비교하고 RStudio에서 그에 따라 변수를 변경하려면 어떻게해야합니까?

  9. 9

    네트워크의 다른 노드에 다른 색상을 할당하려면 어떻게해야합니까?

  10. 10

    스프라이트를 화면의 오른쪽에서 왼쪽으로 직접 이동하려면 어떻게해야합니까?

  11. 11

    Windows 10의 동일한 위치에있는 다른 cmd 프롬프트에서 cmd 프롬프트를 시작하려면 어떻게합니까?

  12. 12

    getline 파이프 라인에서 명령의 종료 상태를 얻으려면 어떻게해야합니까?

  13. 13

    크롬 확장 프로그램을 사용하여 웹 페이지의 onClick 이벤트에서 메시지를 받으려면 어떻게해야합니까?

  14. 14

    조건에 따라 C # WPF TextBox를 다른 속성에 바인딩하려면 어떻게해야합니까?

  15. 15

    둘 이상의 명명 된 파이프에서 메시지를 받으려면 어떻게해야합니까?

  16. 16

    장치에 따라 다른 스토리 보드를로드하려면 어떻게해야합니까?

  17. 17

    변수 값에 따라 다른 함수를 실행하려면 어떻게해야합니까?

  18. 18

    클릭 한 대상에 따라 navigateToURL을 사용하여 사용자를 다른 URL로 보내려면 어떻게해야합니까?

  19. 19

    한 열의 다른 범주에 따라 데이터 줄을 별도의 텍스트 파일로 추출하려면 어떻게해야합니까?

  20. 20

    Selenium 웹 드라이버로 Windows 인증 프롬프트를 감지하려면 어떻게해야합니까?

  21. 21

    각 화면에서 다른 메시지를 받으려면 어떻게해야합니까?

  22. 22

    두 개의 개별 라우터 (하나는 인터넷 용 Wi-Fi, 다른 하나는 네트워크 드라이브 용 LAN)에 연결하고 인터넷 서비스를 계속 받으려면 어떻게해야합니까?

  23. 23

    파이 게임에서 스프라이트를 다른 스프라이트에 "스탠드"로 만들려면 어떻게해야합니까?

  24. 24

    Android 프로젝트에서 다른 API 버전을 빌드 대상으로 사용하려면 어떻게해야합니까?

  25. 25

    Unity [c #]에서 게임을 시작할 때마다 임의의 위치에 스프라이트를 표시하려면 어떻게해야합니까?

  26. 26

    32 비트 또는 64 비트 버전의 PowerShell에 따라 내 프로필의 일부를 제외하려면 어떻게해야합니까?

  27. 27

    Leaflet지도에 마우스를 올려 놓을 때 다각형의 하이라이트 색상을 변경하려면 어떻게해야합니까?

  28. 28

    Android 앱의 서버에서 JSON 데이터를 받으려면 어떻게해야합니까?

  29. 29

    사용자 지정 bash 스크립트 내에서 다른 명령의 파이프 라인 출력을 사용하려면 어떻게해야합니까?

뜨겁다태그

보관