Невозможно выполнить команду direnv последовательно с командами пряжи
На своем Mac-терминале я делаю что-то вроде:
// `yarn clean` deletes some files
// `yarn` re/installs node_modules
// `yarn start:server` starts the server
> yarn clean && yarn && yarn:start server
они работают нормально, так как все выполняется последовательно один за другим.
Но когда я пытаюсь:
// This is what I want to achieve
> direnv allow && direnv reload && yarn start:server
В
direnv
команды игнорируются и только
yarn start:server
выполняется.
Это тоже не работает:
> direnv allow && direnv reload
Это работает:
> direnv allow
> ....
> ...
> direnv reload
1 ответ
Оболочка будет выполнять каждую команду одну за другой последовательно, как написано. Серверы часто демонизируются, т.е. fork() и имеют родительский возврат. У них обычно есть-f
флаг, чтобы подавить это поведение, именно потому, что вам может понадобиться такое последовательное поведение.