Обратите внимание, что после того, как все расширения были выполнены оболочкой и оказались в пустом поле, оно удаляется, если оно не было заключено в кавычки. Поскольку вы не указали переменную в кавычках, если она преобразуется в пустой "", она должна быть удалена из списка аргументов "somecommands". Мало того, что если в DOMAIN_SUFFIX есть пробелы или widlcards, то вы потенциально можете превзойти некоторую команду.
Также $ {DOMAIN_SUFFIX: =. Example.com} - это опечатка, основанная на результатах, которые вы показываете для: DOMAIN_SUFFIX = '' ./example
, поскольку пустой DOMAIN_SUFFIX будет заменен на его значение по умолчанию. value и которое затем помещается в список аргументов somecommand. Следовательно, он никогда не видит «пустого». $ {DOMAIN = .example.com}
объяснит вам полученные результаты.
Есть много альтернатив.
Вы можете взглянуть на powerline или чистую подсказку bash .
Вот руководство по установке и интересная строка приглашения github .
Спасибо за все ваши комментарии. Я наконец нашел его, это порт powerline, который называется powerline-shell.
перейдите по ссылке в репозиторий git и к инструкциям по установке и реализации в вашей оболочке.