Размещение здесь чего-то, что озадачивает меня; обновление сервера приложений от 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
составляет 4.3.30 (1) в Джесси, и 4.4.12 (1) в Stretch.
Почему изменения в поведении между Джесси и Стретч?
bash
cd-command
Руи Ф Рибейро
источник
источник
Ответы:
Смотрите Relase Notes из Bash 4.4 , особенно
Кстати, я не знал. Я просто погуглил для "bash cd number 4.4".
источник