Как обработать несколько файлов, используя скрипт python «из терминала» и не используя другой скрипт или циклы? - PullRequest
0 голосов
/ 05 февраля 2020

У меня есть python файл, который принимает изображение и PDF в качестве входных данных, вычисляет и печатает расстояние Левенштейна между OCR и данными, извлеченными из PDF.

Имя изображения и имя файла pdf следующие:
Изображение - 'foo_1.png', 'foo_2.png', et c. (Один png на страницу pdf)
pdf - 'foo.pdf'

Структура каталогов
Dir
|
| __ изображения
|
| __ foo_1.png
| __ foo_2.png
|
| __ Documents
|
| __foo.pdf
|
| __myScript.py

Я вызываю скрипт из терминала как ~/Dir$ python myScript.py foo
Файлы 'foo_1.png', 'foo_2.png' и 'foo.pdf' вызываются, обрабатываются, и результат печатается следующим образом.

Токовый выход на клемме -

field1 -
L Dist - 61 L Коэффициент - 0,47
field2 -
L Dist - Соотношение 54 л - 0,37

Есть ли способ вызвать скрипт из терминала для обработки нескольких таких файлов в каталоге?

Ожидаемый вывод в терминале -

field1 -
L Dist - 61 L Ratio - 0.47
field2 -
L Dist - 54 L Ratio - 0.37

field1 -
L Dist - 30 L Ratio - 0.07
field2 -
L Dist - 84 L Ratio - 0.87

У меня уже есть сценарий python для выполнения пакетной обработки , Я хотел узнать, есть ли способ добиться этого с терминала, вызывая только ' myScript.py '.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 05 февраля 2020

Зависит от того, что вы хотите сделать. Вы можете открыть папку и сохранить выходные данные в файл или переменную в bash, а затем перебрать файл / переменную и передать элементы в python myScript.py some_value

Самый простой способ - просто как то так:

for file in $(ls); do python myScript.py $file; done
0 голосов
/ 05 февраля 2020

Сначала скачайте пакет python, с его помощью мы сможем выполнить задачу. после загрузки запустите приложение и в терминале откройте обычный текстовый файл python, чтобы проверить, доступен ли указанный файл или нет. После этого укажите полный путь к текстовому файлу и нажмите Enter, он успешно выполнен.

...