Недавно меня задали вопрос. Каковы различные способы выполнения сценария оболочки и какова разница между каждым методом?Разница между различными способами запуска сценария оболочки
Я сказал, что мы можем запустить скрипт в следующих методов, предполагающих test.sh это имя сценария,
- ш test.sh
- ./test.sh
- . ./test.sh
Я не знаю разницу между 1 & 2. Но, как правило, в первых 2-х методов, при выполнении, он будет порождать новый процесс и запустить то же самое. Если в последнем методе он не будет порождать новый процесс. Вместо этого он работает в одном и том же.
Может ли кто-нибудь бросить больше понимания на это и исправить меня, если я ошибаюсь?
[Разница между запуском сценария с ./script.sh и. ./script.sh](http://stackoverflow.com/questions/1880735/difference-between-launch-a-script-with-script-sh-and-script-sh) – devnull
[в чем разница между «./somescript.sh» и «. ./somescript.sh"](http://stackoverflow.com/questions/2634219/what-is-the-difference-between-somescript-sh-and-somescript-sh) – devnull
[В чем разница между запуском сценария оболочки как ./script.sh и sh script.sh] (http://stackoverflow.com/questions/2468132/whats-the-difference-between-running-a-shell-script-as-script-sh-and-sh -script) – devnull