Архитектура главного и подчиненного устройства Дженкинса

Я собираюсь ответить на этот вопрос, используя мощную Perl-программу регулярных -выражений prename, установленную вместе с Perl 5. 1

Запустите эту команду в каталоге, содержащем ваши файлы:

prename -v 's/_\d\d[A-Za-z]+\d\d\d\d_\d\d:\d\d:\d\d((\.[^.]*)?)$/$1/g' *

Вы можете изменить*в конце команды на список файлов, которые вы хотите переименовать (, если вы хотите переименовать только некоторые из них ).

Перевод

Переименуйте все файлы в текущем каталоге, :удалив " символ подчеркивания -, за которым следуют 2 цифры -, за которыми следует один или несколько символов английского алфавита -, за которыми следуют 4 цифры -, за которыми следует подчеркивание -, за которыми следуют 2 цифры -, за которыми следует двоеточие -, за которыми следуют 2 цифры -, за которыми следует двоеточие -, за которыми следуют 2 цифры-", ЧТО НАХОДИТСЯ непосредственно перед расширением файла (или концом имени файла, если у него нет расширения ).

Примечания

  • Вы можете изменить параметр -vна -n, если хотите сначала увидеть, как вещи будут переименованы (без их фактического переименования ).
  • Ваши примеры, если бы они находились в одном и том же каталоге, привели бы к конфликту имен файлов.(См. ниже)
  • Если имя вновь переименованного файла конфликтует с другим существующим файлом или ранее переименованным именем файла в процессе; prenameвыведет предупреждение, и указанный файл останется без имени. (Другие более поздние файлы, не затронутые этой проблемой, по-прежнему будут переименовываться)
  • Имейте в виду, что нет команды для удаления общей «даты» в конце имен файлов;слишком много форматов дат и разделителей; применение неправильного формата даты при переименовании также приведет к беспорядку. Команда, которую я дал, применяется только к разделителю даты имени файла -, формату даты и разделителю расширения даты -, которые можно увидеть в ваших примерах. См. перевод выше для точных деталей.
  • Я тестировал это на Debian GNU/Linux 7.0 "Wheezy" i386 (с Perl 5.14.2)

П.С. Обязательный комикс:"Перл на помощь!" (также известный как XKCD #208 " Регулярные выражения ")


1 В некоторых системах, таких как моя, это также программа, которая запускается при вызове rename. Однако это не то же самое, что и утилита util -linux, упомянутая в комментарии @Philippos. Запустив man renameи прокрутив вниз, вы узнаете, было ли это из Perl или из утилиты -linux.

0
22.11.2020, 15:18
1 ответ

В простой архитектуре мастер будет действовать как планировщик и исполнитель (, агент и сервер).

В архитектуре ведущий/подчиненный главный может действовать как планировщик и/или исполнитель, в то время как подчиненные будут действовать как исполнители.

Сначала вы должны решить, почему вы пытаетесь использовать архитектуру master/slave? Это позволит вам извлечь выгоду из:

1 -Параллельное выполнение заданий с распределением нагрузки на ведомые устройства.

2 -Преимущества использования вычислительных ресурсов подчиненных узлов.

3 -Отдельные исполнители для нескольких сред (Prod, Qa... )с использованием меток.

4 -Преимущества различных операционных систем, которые предоставят все необходимые строительные инструменты для вашей работы (Совместимость ).

Таким образом, я не вижу никакой выгоды в установке обоих на одном сервере, разве что для целей маркировки , чтобы вы могли назначать разные ресурсы для очередей заданий для каждой среды. например (см. пункт 3 ).

1
18.03.2021, 22:47

Теги

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