172 похожих чатов

Народ, посоветуйте решение Задача: запустить скрипт, передав ему переменные, экспортированные в

другом скрипте

Файл с переменными variables.txt:
MY_VAR1=1
MY_VAR2=2

скрипт export_from_file.sh:
#!/usr/bin/env bash

for p in `cat ./variables.txt`;
do export "$p";
done;

Далее вызываю этот скрипт и хочу, чтобы экспортированные переменные передались в другой скрипт:
export_from_file.sh && other_script

В скрипте other_script переменных не видно и понятно почему - экспортированные переменные создаются и умирают при запуске export_from_file.sh
Как это сделать?

Замечу, что в файл `variables.txt` нельзя сразу записать
export MY_VAR=1
и сделать source variables.txt, потому как этот файл с переменными используется другим кодом
Также не допускается сделать вызов other_script из export_from_file.sh - переменные нужны для разных скриптов

2 ответов

3 просмотра

отклонить себе конфиг файл, добавить туда седом export, заюзать source, убить временный файл

Ты НЕ ХОЧЕШЬ этого делать. У различных скриптов различная область видимости и "передать переменные" они могут только через global env, а так делать не надо потому, что ну бля вот не делай так! Хоть через именованые пайпы их передавай но не через глобал

Похожие вопросы

Обсуждают сегодня

Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
10
А дальше что?.. Записать в файл, потом в Код?.. И потом разбирать как-то?..
Хаскель Моисеевич Гопник
14
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
А чем вам питонисты не угодили?😂
.
79
доброго времени. db, dw и прочие исполняются при трансляции или при выполнении программы?
lutayyy
10
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Есть предложения, как подобное можно упростить?
Hemul GM
12
@y0zhig @shizzard А можно я опишу цель и может вообще ерланг мне не подходит. На текущий момент как я понимаю у ерланга есть легковесные потоки и задача выполняется в каком т...
Дмитрий Спиридонов
5
У меня вопросик назрел. Почему, создав класс без наследования и реализации деструктора Destroy, деструктор не вызывался при free. Потом указал наследование от tobject и overri...
Сергей Бычков
9
Карта сайта