Mac OS xargs는 줄 끝에 '?[m'을 추가합니다.

Mac OS xargs는 줄 끝에 '?[m'을 추가합니다.

일부 로컬 Git 브랜치를 삭제하려고 합니다.

git branch -D $(git branch | grep 'RTL-1[1|2|3]' | xargs)

하지만 이 오류가 발생했습니다.

error: branch 'RTL-1114_branch_name1?[m' not found.
error: branch 'RTL-1224_branch_name2?[m' not found.
error: branch 'RTL-1225_another_branch?[m' not found.

어떤 이유로 "?[m" 문자열이 추가되지만 git 명령이 없으면 공백으로 구분된 가지가 무작위로 인쇄됩니다.
내 Linux 컴퓨터에서는 작동한다고 생각하는데, MacOS에서는 다른가요?

답변1

출력에 항상 색상을 사용하도록 설정 git및/또는 구성 할 수 있습니다 .grep

git branch -D $(git branch --color=never | grep --color=never 'RTL-1[123]')

작동해야합니다.

git자신만의 패턴 일치를 사용할 수 있습니다 .

git branch -D $(git branch --color=never -l '*RTL-1[123]*')

앞으로 이를 방지하려면 auto다음 설정을 사용해야 합니다 color. 터미널로 출력하면 색상이 출력되고, 그렇지 않으면 색상이 출력되지 않습니다. 적절한 구성 git:

git config --global color.ui auto

의 경우 grep별칭을 확인하세요.

관련 정보