Unix 셸의 세 가지 와일드카드 문자는 *
, ?
및 입니다 []
. 이러한 와일드카드에 대한 설정을 변경할 수 있습니까? 예를 들어 기호나 그 동작은 무엇입니까?
이 질문에 직접 답하기 위해 "새 와일드카드 셸 만들기" 및 "와일드카드 셸 설정 변경"을 검색했지만 관련 항목을 찾을 수 없었습니다. 이러한 설정이 셸에 "하드코드"되어 있습니까?
추신: 저는 bash를 언급하고 있는 것 같습니다. 제가 사용하는 기본 bash(Xubuntu)입니다. 어쩌면 다른 쉘(tcsh, ksh, fish 등)을 더 맞춤화할 수 있을까요?
답변1
아니 당신은 할 수 없습니다. Bash를 다시 컴파일하지 않는 한. 그러나 glob 문자처럼 기본적이고 어디에나 있는 것을 변경하면 대부분의 Bash 스크립트와의 호환성이 손상됩니다. 따라서 이렇게 하면 결과 바이너리를 "bash"라고 부르지 마세요.
zsh
와일드카드를 사용하면 더 많은 유연성을 얻을 수 있지만 그렇다고 하더라도 자신만의 구문을 임의로 정의할 수는 없습니다.
원하는 것(재정의 가능한 패턴 일치 언어)에 가장 가까운 것은 어떤 셸에도 없지만 다음과 같이 들립니다.Perl 6과 매우 유사. 참고: 이것은아니요마음이 희미한 사람들을 위해.