Я пытаюсь преобразовать этот командный файл, который запускает скрипт Python, в скрипт bash. Мне нужна была помощь в преобразовании функции ожидания в пакетном файле, которая ожидает завершения действия, в bash.
script.py wait-for-job <actionID>
- это фактический вызов, ожидающий завершения определенного действия. Функция ожидания в основном присваивает значение из файла журнала переменной, а затем передает эту переменную в качестве параметра скрипту Python (script.py).
Файл журнала записывается непрерывно после каждого действия и последнегострока (из которой извлекается идентификатор действия) выглядит примерно так: 02/10/2019 00:00:00 AM Greenwich Mean Time print_action_id():250 INFO Action ID: 123456
Функция ожидания в пакетном файле выглядит следующим образом:
:wait
@echo off
for /f "tokens=11" %%i in (C:\Users\DemoUser\Dir\file.log) do ^
set ID=%%i
@echo on
script.py wait-for-job --action-id %ID%
EXIT /B 0
Я пытался реализовать то же самоев bash, как показано ниже, но это, похоже, не работает (я новичок в сценариях оболочки и уверен, что все не так):
for $a in (tail -n1 /home/DemoUser/Dir/file.log); do
ID=$($a | awk { print $12})
script.py wait-for-job --action-id $ID
done