Bash에서 환경 변수의 탭 완성을 확장하는 방법은 무엇입니까?

Bash에서 환경 변수의 탭 완성을 확장하는 방법은 무엇입니까?

내 .bash_profile에 $MODULES라는 환경 변수가 저장되어 있습니다.

MODULES='/var/www/html/sites/all/modules/

Bash 프롬프트에 입력한 cp $MOD다음 Tab 키를 눌러 완료할 때 어떻게 확장합니까?

sudo cp /var/www/html/sites/all/modules/

...하위 폴더를 즉시 계속 사용하고 탭을 사용하여 작업을 완료할 수 있나요? 이제 TAB 완료를 수행하면 다음과 같이 해결됩니다.

sudo cp \$MODULES/

...현재 위치에서 "$MODULES"라는 디렉토리를 찾고 있다는 뜻인데, 분명히 제가 원하는 것은 아닙니다.

답변1

shopt -s direxpand탭 완성을 사용하여 디렉터리 변수를 전체 경로로 확장하도록 관련 Bash 셸 옵션을 설정합니다 . .bashrc옵션을 영구적으로 만들려면 이 줄을 추가하세요 .

Tab 키를 누르기 전에 변수 뒤에 슬래시를 추가해야 합니다.

관련 정보