Преобразовать функцию пакетного файла в bash - PullRequest
0 голосов
/ 02 октября 2019

Я пытаюсь преобразовать этот командный файл, который запускает скрипт 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...