특정 디렉토리에 대한 Mac 터미널 프롬프트 색상

특정 디렉토리에 대한 Mac 터미널 프롬프트 색상

설정하려고 하는데시각적 경고언제특정 디렉토리 내에서 작업맥 OSX 내에서단말기.

특히, 동일한 프레임워크 내에서 실행되는 여러 프로젝트가 있어 쉽게 실수가 발생할 수 있습니다. pwd몇 분 이상 터미널 창을 방문하지 않은 경우 다른 명령보다 먼저 실행하게 됩니다 . 멍청한 추가 조치처럼 보입니다.

내가 찾은 모든 리소스는 내 bash 프로필에서 색상 프로필을 설정하는 것에 관한 것입니다 :(

업데이트됨 지금까지의 답변은 다음과 같습니다(음표를 짖는가, 색상에는 작동하지 않음). 이유는 아래를 읽어보세요.

#! /bin/bash -i

# Add this to ~/.bash_profile
# PROMPT_COMMAND=/usr/local/bin/coloraware

PROJECT1='projectfolder/'
PROJECT2='projectfolder2/'
PROJECT3='projectfolder3/'
PWD=`pwd`

case "$PWD/" in
    *$PROJECT1*)
        export PS1='\[\e[1;31m\][\u@\h \W]\$\[\e[0m\] '
        echo "Project #1"
        ;;
    *$PROJECT2*)
        export PS1='\[\e[1;34m\][\u@\h \W]\$\[\e[0m\] '
        echo "Project #2"
        ;;
    *$PROJECT3*)
        export PS1='\[\e[1;35m\][\u@\h \W]\$\[\e[0m\] '
        echo "Project #3"
        ;;
esac

답변1

설명된 대로 터미널 세션의 색상을 변경할 수 있습니다.@DanielBeck의 답변은 여기에 있습니다..

현재 작업 디렉토리를 가져오는 쉘 스크립트로 호출을 래핑한 osascript다음 해당 쉘 스크립트를 에 넣거나 $PATH명령 프롬프트에 넣을 수도 있습니다 PS1.

예를 들어, 작업 디렉터리의 기본 이름이 내 홈 폴더인 경우 AppleScript 명령을 실행하여 색상을 변경합니다(또는 이 경우에는 대화 상자로 잔소리하면 됩니다).

#!/bin/sh
if [ $(basename $PWD) = "werner" ]; then
  osascript -e 'tell app "Finder" to display dialog "foo"'
fi

관련 정보