Можно ли отправить данные для конкретной функции в bat-файле из python? - PullRequest
0 голосов
/ 21 марта 2019

Я сейчас работаю в проекте .bat.До сих пор функция в .bat вызывает скрипт Python, .py проверяет некоторые данные в файле .c и генерирует отчет в файле .txt, а .bat продолжает работать.Но я хочу показать информацию из .txt в консоли при запуске .bat.Я имею в виду, чтобы отправить информацию обратно из .py в .bat.Я нашел способ отправлять информацию из .py в .bat, но это работает только при открытии .bat с самого начала, и это будет только прерывать процесс функции.

Я сделал два небольших скрипта (.bat и .py) кроме уже упомянутого проекта .bat, и они работают.Но эта логика не работает с моим основным проектом, потому что в реализованной логике .py заново открывает .bat с самого начала.

Это логика обоих моих маленьких рабочих скриптов: Сценарий .bat:

@echo off
color 2f

set arg1=%1
set Tool.Python.exe=D:\uti\programs\Python27\python.exe
set Python.File.Path=C:\Users\gml1028\Desktop\sending_args.py

if "%arg1%"=="" (
    goto openPython
    )
    echo My own interface 
    echo Press 1 for showing some numbers
    echo Press 2 for showing some letters
    echo Press 3 for showing letters and numbers
    set /p select=Select: 
    if "%select%"=="1" (
        goto showNumbers
        )
    if "%select%"=="2" (
        goto showLetters
        )
    if "%select%"=="3" (
        goto showAlphanumerics 
        )

:openPython  
call %Tool.Python.Exe% -u %Python.File.Path%
goto :eof

:end 

:showNumbers
    echo 1
    echo 2
    echo 3
    echo 4
    echo The number is %arg1%
    pause
goto :eof

:showLetters 
    echo a
    echo b
    echo c
    echo d
    echo The number is %arg1%
    pause
goto :eof

:showAlphanumerics 
    echo 1a
    echo 2b
    echo 3c
    echo 4d
    echo The number is %arg1%
    pause
goto :eof

Сценарий .py:

import os, subprocess, random 

filepath=r'C:\Users\visgmo\Desktop'
executable = os.path.join(filepath, 'sending_args.bat')
p = subprocess.Popen([executable, str(random.randrange(0,20))])

В этом случае яне волнует, если .bat перезапускается, потому что я просто пытался, если это сработало.Но я делаю это в основном проекте, потому что после вызова .py файла .bat должен продолжать работать.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...