При использовании оболочки bash я иногда сохраняю переменные окружения в текстовом файле, содержимое которого копирую / вставляю, например, export.txt:
export FOO=bar
export FIZZ=buzz
Кто-то показал мне вместо копирования / вставки, я мог набрать в терминале
. exports.txt
который будет иметь тот же эффект, что и копирование / вставка.
Каков механизм, с помощью которого работает эта команда «имя файла с точечным пространством»? Трудно придумать условия поиска для этого.
Я хочу понять, что происходит, и более общие детали того, что делает этот однострочник.
'. ' argsодинарные или двойные кавычки. В противном случае пространство без кавычек пожирается bash, когда он разбирает строку на токены (см. Разделение слов в руководстве по bash).
.is source, которое буквально означает «команды источника из этого файла», по крайней мере для меня.
help .Это так мало, движок Stack Exchange считает, что он слишком короткий, чтобы быть комментарием.