XNUMX 년의 개발 끝에 GNU Bash 5.1 쉘의 새 버전이 출시되었습니다. 대부분의 Linux 배포판에서 기본값입니다. 동시에 readline 8.1 라이브러리의 릴리스가 형성되어 bash에서 명령 줄 편집을 구성하는 데 사용되었습니다.
이것은 많은 무료 Unix 시스템의 기본 인터프리터입니다. 특히 GNU / Linux 시스템에서. 또한 Mac OS X의 기본 셸이기도합니다. Cygwin 프로젝트는 처음으로 Windows로 가져 왔고 Windows 10에서는 운영 체제 옵션입니다.
Bash 5.1의 새로운 주요 기능
엔진은 의사 난수를 생성하도록 재 설계되었습니다. 그 외에 se SRANDOM 변수 추가 시스템 의사 난수 생성기의 32 비트 난수를 포함하는입니다.
연관 배열의 경우 복합 할당 지원이 구현됩니다., 쌍 세트가 키 / 값 형식으로 전달되며 연관 배열에 추가 된 데이터 유형에 따라 해시 테이블의 크기가 동적으로 증가합니다.
눈에 띄는 또 다른 변화는 모드입니다. POSIX, 프로세스 대체 기능 구현, 명령의 입력 및 출력은 다른 명령에 의해 파일로 처리됩니다.
추가되었습니다 변환 연산자에 대한 새 매개 변수 : "U", "u"및 "L"은 전체 문자열을 대문자로 변환하고, 첫 번째 문자를 대문자로 변환하고 소문자로 변환하고 매개 변수 "K"는 키 / 값 형식으로 연관 배열을 표시합니다.
이전 버전과의 호환성 모드를 사용하려면 이제 BASH_COMPAT 변수를 사용해야합니다 (compat5.0 옵션을 사용하여 bash 50 호환성 모드를 설정할 수 없음).
기본적으로, Readline에는 브라켓 붙여 넣기 모드가 활성화되어 있습니다. 여기서 클립 보드로부터 검색된 데이터는 클립 보드로부터 수신 된 데이터를 시각적으로 강조하기 위해 이스케이프 시퀀스로 프레임 화된다. Readline은 이러한 삽입물을 강조 표시하고 증분 및 비 증분 기록 검색 중에 발견 된 텍스트를 강조 표시합니다. 강조 표시 레이블이 무시되는 명령 및 상황의 수가 확장되었습니다.
또한 se는 이전 동작을 반환했습니다. 확장 관련 백 슬래시를 포함하는 단어를 지정할 때 파일 경로 그러나 특수 마스크 확장 문자를 사용하지 않습니다.
bash 4.4에서와 같이 이러한 경로는 더 이상 공개되지 않습니다 (Bash 5.0의 수정 된 동작은 POSIX 표준에 따랐지만 사용자가 부정적으로 받았으며 POSIX위원회는 사양 변경에 동의했습니다). 또한 GLOBIGNORE 모드는 이제 "."를 무시합니다. 터미널에 지정된 경로 구성 요소로 ".."
터미널 데이터를 읽을 때 수정 된 예외 처리 읽기 및 선택 구문을 사용합니다. 내장 선택 기능은 이제 신호가 내부 읽기 호출을 중단 할 때 트랩합니다. SIGINT 컨트롤러의 순환 실행이 허용됩니다.
Readline은 단일 라인 터미널에서 자동 수평 스크롤링을 구현했습니다.
또한 우리는 찾을 수 있습니다 다른 바로 가기 링크 정의 지원 "bind -x"명령에서 다른 편집 모드와 다른 키보드 레이아웃을위한 키보드.
지점 수 최적화가 구현되었습니다. 서브 쉘에서 명령을 실행하거나 "bash -c"를 사용할 때 실행됩니다. "bash -c"를 실행할 때 이제 jobs 명령으로 작업 실행 상태를 찾을 수 있습니다.
이제 패턴 일치 코드는 fnmatch 호출을 사용하여 동일하게 보이지만 문자 코드가 다른 문자열을 설명합니다.
명령 shell-transpose-words가 readline에 추가되었습니다., shell-forward-word에서와 동일한 단어 정의를 사용합니다. 기본적으로 쉘-포워드-워드, 쉘-백 워드-워드, 쉘-트랜스 포즈-워드 및 쉘-킬-워드에 대한 키보드 바인딩이 추가되었습니다.
Linux에서 Bash 5.1을 얻는 방법은 무엇입니까?
현재 이 새로운 버전의 Bash가 통합되기를 기다리는 것만 남아 있습니다. Linux 배포판의 저장소 내에서 가장 좋은 옵션이기 때문입니다.
이 새 버전을 지금 받고 싶은 분들과 조금 더 알고 싶다면 다음 링크를 방문 할 수 있습니다.
작업중인 버전을 확인하려면 터미널을 열고 다음 세 가지 방법 중 하나를 시도하면됩니다 (확실히 더 많은 방법이있을 것입니다).
1) $ echo "$ {BASH_VERSION}"
2) $ bash – 버전
3) 아무것도 입력하지 않고 잘라 내기 및 붙여 넣기 키 조합을 사용합니다. 즉, Ctrl + x Ctrl + v