В чем разница между "." "./" и "source"?

В чем разница между "." "./" и "source"?

В чем разница между

. script.sh
./script.sh

и

source script.sh

?

решение1

./script

Вышеуказанное выполняет скрипт. Когда скрипт выполнен, любые изменения, которые он внес в среду, отменяются.

. script

Вышеприведенные источники скрипта. Это как если бы команды были введены напрямую. Любые изменения среды сохраняются.

source script

Это также источник скрипта. sourceКоманда не требуется POSIX и поэтому менее переносима, чем более короткий ..

Связанный контент