bash 릴리스에서 여러 인수를 사용하는 cd의 다른 동작 게시; Jessie에서 Stretch로 애플리케이션

여기에 나를 괴롭히는 무언가를 게시; Jessie에서 Stretch로 애플리케이션 서버를 업그레이드하면 bash스크립트 가 깨졌습니다 .

조사 결과, 우리는 cd지휘관 의 행동 변화로 좁혔습니다 . 스크립트가하는 일이 좋은 아이디어인지 또는 개선 될 수 있는지에 대해서는 여기에서 논의하고 있지 않습니다. 변화 변경에 대한 행동 변화 / 인식에 중점을두고 있습니다.

제시

$echo *-*
xxxx-1.0b xxxx-run
$cd *-*

cd가 작동하고 첫 번째 디렉토리로 cd합니다. 실제로 * -run은 동일한 디렉토리에 대한 심볼릭 링크입니다.

뻗기

$echo *-*
xxxx-1.0b xxxx-run
$cd *-*
bash: cd: too many arguments

bash Jessie에서는 4.3.30 (1), Stretch에서는 4.4.12 (1)입니다.

Jessie와 Stretch 사이의 동작이 변경되는 이유는 무엇입니까?



답변

특히 bash 4.4관련 노트를 참조하십시오.

qq. config-top.h에 설정 가능한 새로운 옵션 cd으로 치명적인 오류 에 대한 여러 디렉토리 인수를 만듭니다 .

BTW, 나는 몰랐다. 방금 “bash cd number 4.4″를 검색했습니다.


답변