Bash 별칭 정의 구문

Bash 별칭 정의 구문

저는 Cygwin을 사용하고 있으며 모든 개발자 패키지는 물론 다른 패키지 전체는 아니더라도 대부분을 설치했습니다. gcc에 별칭을 제공하면 오류가 발생합니다.

-bash: alias: gcc: not found

내가 뭘 잘못하고 있는 걸까요?

터미널에 다음 명령을 입력하고 있습니다.

alias gcc "gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all"

참고로 이 별칭은 다른 시스템에서도 작동합니다.

답변1

bash/zsh/fish에 대한 별칭 할당 구문이 잘못되었습니다(구문은 tcsh). =별칭 이름과 별칭 확장 사이에 필요합니다.

alias gcc="gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all"

을 생략하면 =bash는 및 `"gcc -ansi ..."를 두 개의 별칭 이름으로 해석 gcc하고 해당 정의를 나열하려고 시도합니다. 해당 별칭은 정의되지 않았으므로 다음과 같은 경고가 표시됩니다.

bash: alias: gcc: not found
bash: alias: gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all: not found

관련 정보