추가 읽기

추가 읽기

Z 쉘을 사용하여 터미널 세션에서 이것을 시도했습니다.

stty erase ^M

나는 다음 메시지를 받았습니다:

stty: invalid integer argument: «CCPP»

나는 무엇을 해야할지 모르겠습니다.

답변1

Z 셸에서 ^역할은 다음과 같습니다.확장된 와일드카드인식된 문자파일 이름 확장자명령 처리의 일부입니다.

Z 쉘 매뉴얼에 설명되어 있듯이 이 패턴은 ^M모든 파일 이름과 일치합니다.와는 별개로패턴과 일치하는 것 M. 따라서 stty erase현재 디렉터리의 모든 파일 이름이 뒤에 오도록 명령이 확장됩니다.이름이 있는 사람을 제외하고M그렇다면.

상황은 간단합니다. 현재 디렉터리에 파일 이름이 있고 와일드카드 패턴이 확장되면 «CCPP»해당 파일이 결과 목록의 첫 번째 파일이 됩니다.^M

인용 또는 이스케이프 메타문자:

  • stty erase '^M'
  • stty erase \^M

또는 Z 셸의 확장 와일드카드를 끄세요.

  • setopt no_extended_glob

경험 비교이 사람파일 이름이 다르고 제외 패턴이 인 사람 ?.그 사람의 위치는 다음과 같습니다.https://askubuntu.com/a/206722/43344위의 참조는 실제로 실행되며 잘못된 인수가 실제로 제공됩니다(정확히 1자 지정자가 아닌 3자 문자열).

물론 eraseCR은 특수 캐릭터에게는 이상한 선택입니다. 하지만 정확히 왜 이런 일을 하는지는 설명하지 않겠습니다. ☺

추가 읽기

관련 정보