Остановите direnv, показывая все переменные окружения при загрузке

Я имею direnv установлен, и мне было интересно, есть ли способ остановить его от показа всех переменных среды, которые он загружает? Строки вывода, которые он показывает в данный момент:

direnv: loading .envrc
direnv: export +FOO +BAR +FOO2 +BAR2 +FOO3 +BAR3 +FOO4 +BAR4

Я в порядке с показом первой строки, но так как во второй строке содержится что-то около 50 переменных, то немного раздражает, что их множество отображается каждый раз, когда я захожу в каталог.

2 ответа

Можно полностью удалить логи, установив export DIRENV_LOG_FORMAT= но тогда остальные логи тоже отсутствуют

Насколько я знаю, вы не можете изменить это поведение с помощью конфигурации.

Если это поведение было частью stdlib, вы можете переопределить его. На самом деле, первый выход, direnv: loading .envrc происходит от source_env который использует log_status выводить на stderr, чтобы вы могли переопределить любой из source_env или же log_status в ~/.config/direnv/.direnvrc или же ~/.direnvrc,

Тем не менее, второй вывод исходит из diffString в cmd_export.go (с помощью log_status в log.go). Если не считать вашей собственной модифицированной версии direnv, я не вижу, как вы можете изменить это поведение в текущей версии (v2.17.0).

Другие вопросы по тегам