스크립트에서 별칭 사용 방지 [닫기]

스크립트에서 별칭 사용 방지 [닫기]

.bash_profile에 grep줄 번호와 색상 일치를 표시하는 별칭이 있습니다. 내 결과 grep의 예는 다음과 같습니다.

$ grep test filename
1:This is a test (to be removed)
1:This is a second test (to be removed)

내 별칭은 다음과 같습니다.

alias grep="grep --color"

grep스크립트에서 명령을 실행할 때 이 별칭이 사용되는 것을 방지할 수 있는 방법이 있습니까?

스크립트에서 다음 명령을 시도하면:

grep test filename | sed -E 's/^(.*) \(.*$/\1/g'
\grep test filename | sed -E 's/^(.*) \(.*$/\1/g'
command grep test filename | sed -E 's/^(.*) \(.*$/\1/g'
/usr/bin/grep test filename | sed -E 's/^(.*) \(.*$/\1/g'

모든 결과는 다음과 같습니다.

1:This is a test
1:This is a second test

다음과 같은 결과를 얻으면 좋을 것입니다.

This is a test
This is a second test

나는 grep (GNU grep) 2.21및 을 사용하고 있습니다 GNU bash, version 4.3.33.

답변1

사용 \grep.

(Bourne/POSIX) 쉘 사양에는 명령 단어의 문자가 인용될 때 대화형 쉘의 별칭 대체가 억제된다고 명시되어 있습니다.

https://stackoverflow.com/a/16506263/91769

관련 정보