TGViewer
Bash Days | Linux | DevOps Bash Days | Linux | DevOps @bashdays · 23.6K subscribers
Post #764 10.9K
Привет чокаво.

Ребенок щас вопрос задал — пап, а в чем разница? Этож одно и тоже?

source script.sh 
. script.sh
./script.sh


В первых двух случаях, да это одно и тоже. Source и точка (как макдак блядь), это идентичные команды. Точка сделана для краткости.
ㅤ
Команда source и точка, используется для выполнения команд из файла в текущем сеансе оболочки.

VAR="bashdays"

source script.sh
. script.sh


Передаем в скрипт переменную VAR, по итогу если в скрипте сделать echo $VAR, то на экран выведется слово — bashdays.

Если же сделать так:

VAR="bashdays"

./script.sh


Нихуя не выведется и даже не запустится если нет атрибута +x.

Потому, что в этом случае запустится новый процесс, который не видит локальные переменные текущей оболочки, если они не были экспортированы.

Чтобы это заработало нужно сделать:

export VAR="bashdays"
./script.sh


Ну и захуячить chmod +x script.sh, тогда все взлетит.

Ааааа, еще в скрипте тебе нужно обязательно вставить shebang.


В случае с source и точка, эти пиздострадания не нужны. Не нужно ничего экспортировать, выставлять +x и добавлять shebang.

➡️ source script.sh и . script.sh

Новый процесс: Нет
Изменяет окружение текущей оболочки: Да
Требует shebang: Нет
Требует права на выполнение: Нет

➡️ ./script.sh

Новый процесс: Да
Изменяет окружение текущей оболочки: Нет
Требует shebang: Да
Требует права на выполнение: Да

Когда это и где применять?

- Используем source и точку для скриптов, которые должны изменить текущее окружение.

- Используем ./script.sh для независимого выполнения скрипта.

Ничего больше нового не скажу. Теперь и ты это знаешь.

tags: #linux #bash
—

🔔 @bashdays➡️ @gitgate
More from @bashdays
  1. Sep 24, 2026Post #1565
  2. Sep 23, 2026Здрасти приехали, решил я в кой-то веке воспользоваться услугами Codex, создал аккаунт, по…
  3. Sep 22, 2026Всем привет, с вами TagdTagd. Сегодня опять поднимем тему архивов, но немного с другой сто…
  4. Sep 15, 2026Всем привет, с вами TagdTagd. И это вторая часть. Практическая. С первой частью можешь озн…
  5. Sep 11, 2026🤖 DevOps в эпоху AI трансформации: что работает уже сейчас! 17 сентября Сбер собирает Dev…
  6. Sep 9, 2026Всем привет, с вами TagdTagd! Я тут вынужденно перешёл на MAX. Просто Telegram перестал ра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →