Лично я использую dotify для упрощения рабочего процесса мерзавца и некоторых условных выражений в моих конфигурациях ZSH и Emacs (имя хоста, ОС и т.д.). Также вместо пользовательских сценариев я склонен главным образом делать функции оболочки в наше время...
Или просто поместите все константные переменные в функцию:
В зависимости от того, какие файлы вы копируете, вы должны посмотреть в [117607]rsync -z[117608]. вместо [117609] scp[117610]. И рассмотрим возможность запуска [117611]параллельного --bibtex[117612] один раз (как предлагает параллель).[117321].
parallel[117614] запустит новую оболочку для каждого запуска [117615]do_copy[117616] и в этой оболочке переменные интерпретируются и не существуют. Если используется опция [117617]-s SERVER[117618], то опция [117619]--env VAR[117620] скопирует [117621]VAR[117622] из начальной оболочки [117623]parallel[117624] в удаленную среду, в которой выполняется команда:
Вам может сойти с рук вышеописанный localhost hack, так как я не вижу простого способа реализовать вашу многосерверную логику в опции параллельного сервера [117625]-S[117626] (если только вы не гарантируете, что один из серверов не будет иметь файла? )
Приятнее было бы экспортировать переменные, как предложил Оле, или передать все требуемые значения в качестве параметров в функцию [117627]do_copy[117628][117331].