#gnu-parallel
#gnu-parallel
Вопрос:
Предположим, я запускаю gnu parallel на массиве элементов, полученных из standard in, и разделяю в соответствии с некоторыми критериями:
cat content | parallel -j 4 my_command
Как мне получить доступ к номеру задания, чтобы я мог передать в command в качестве аргумента номер задания / идентификатор параллельного выполнения (чтобы каждый блок параллельного выполнения имел уникальный номер):
cat content | parallel -j 4 my_command -n ???
(Возможно ли это вообще? Просматриваю справочные страницы на данный момент)
Ответ №1:
Вы ищете строку для замены {#}
cat content | parallel -j 4 my_command -n {#}
Это также упоминается в шпаргалке: https://www.gnu.org/software/parallel/parallel_cheat.pdf
Комментарии:
1. Пожалуйста, добавьте к своему ответу еще какое-нибудь объяснение, чтобы другие могли извлечь из него урок — что вы изменили и почему?
2. Как мне получить доступ к номеру задания, отправленному этим, в моем коде внутри my_command?
3. @GeoffreyAnderson Вы получаете к нему доступ, как к любому другому аргументу (argv).