Как использовать однопоточный скрипт для пакетной обработки?

У меня есть однопоточный скрипт python, который используется следующим образом:

python -c "arg"

У меня также есть * .txt файл со многими arg , каждый в одной строке в соответствующем * .txt. Текстовый файл, скажем, 1.txt выглядит следующим образом:

arg1
arg2
arg3
arg4

Теперь я хочу запустить скрипт python со всеми этими аргументами, один за другим, так как скрипт не допускает более одного аргумента. [ ! d4]

Как обрабатывать эти аргументы в пакетном режиме с помощью командной строки?

1
задан 10 January 2013 в 21:25

1 ответ

Очень простое решение,

cat 1.txt | xargs -I{} python -c "{}"

Объяснение: cat печатает все строки, а xargs гарантирует, что каждая строка используется как аргумент.

Edit: [[ f4] означает, что {} следует заменить аргументом.

1
ответ дан 25 May 2018 в 02:35
  • 1
    Вау, это действительно легко. Но следует ли учитывать, что аргументы должны быть заключены в ""? – mcbetz 10 January 2013 в 20:56
  • 2
    Теперь это, см. Мое редактирование;) Если у вас несколько файлов, просто замените 1.txt на *.txt, и он тоже будет работать. – Gerhard Burger 10 January 2013 в 21:07

Другие вопросы по тегам:

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