Hướng dẫn how do i run a batch file from a python script? - làm cách nào để chạy một tệp hàng loạt từ một tập lệnh python?

Trong hướng dẫn này, bạn sẽ thấy các bước hoàn chỉnh để tạo tệp hàng loạt để chạy tập lệnh Python.

Nhưng trước khi chúng tôi bắt đầu, đây là mẫu tệp hàng loạt mà bạn có thể sử dụng để chạy tập lệnh Python của mình:

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause

Bước 1: Tạo tập lệnh Python

Để bắt đầu, hãy tạo tập lệnh Python của bạn.

Ví dụ: hãy để tạo ra một tập lệnh Python đơn giản có chứa đếm ngược & nbsp; [Ngoài ra, bạn có thể sử dụng bất kỳ tập lệnh Python nào mà bạn muốn chạy]:

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1

Bước 2: Lưu tập lệnh của bạn

Lưu tập lệnh Python của bạn [tập lệnh Python của bạn sẽ có phần mở rộng của ‘.py‘]..py‘].

Ví dụ của chúng tôi, hãy để Lừa lưu tập lệnh Python như: Đếm ngược lạicountdown

  • Phần mở rộng tệp ở đâu .pypy.py

Bước 3: Tạo tệp Batch để chạy tập lệnh Python

Để tạo tệp hàng loạt, hãy mở Notepad và sau đó sử dụng mẫu sau:

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause

Bạn cần phải điều chỉnh cú pháp ở hai nơi:

  • Đường dẫn nơi bạn được lưu trữ \ python.exe, đây là một ví dụ trong đó có một con trăn exe: \ c: \ users \ ron \ appdata \ local \ Program
    Here is an example where a Python exe is located: “C:\Users\Ron\AppData\Local\Programs\Python\Python39\python.exe”
  • Đường dẫn trong đó tập lệnh Python của bạn được lưu trữ
    And here is an example where a Python script is located:
    “C:\Users\Ron\Desktop\Test\countdown.py”

Lưu ý rằng bạn sẽ cần thay đổi các đường dẫn để phản ánh các vị trí nơi các tệp được lưu trữ trên máy tính của bạn.

Đây là cách tập lệnh hàng loạt sẽ trông như thế nào trong Notepad cho ví dụ của chúng tôi:

@echo off
"C:\Users\Ron\AppData\Local\Programs\Python\Python39\python.exe" "C:\Users\Ron\Desktop\Test\countdown.py"
pause

Lưu Notepad bằng tiện ích mở rộng ‘.bat. Ví dụ: hãy để Lôi lưu Notepad dưới dạng Run_Script.bat.bat‘ extension. For example, let’s save the Notepad as Run_Script.bat

Một tệp hàng loạt mới, được gọi là Run Run_Script.bat, sẽ được tạo tại vị trí được chỉ định của bạn.Run_Script.bat,” will be created at your specified location.

Bước 4: Chạy tệp hàng loạt

Cuối cùng, nhấp đúp vào tệp Batch để chạy tập lệnh Python.

Sau đó, bạn sẽ nhận được đếm ngược như sau:

CountDown = 10
CountDown =  9
CountDown =  8
CountDown =  7
CountDown =  6
CountDown =  5
CountDown =  4
CountDown =  3
CountDown =  2
CountDown =  1

Bạn cũng có thể muốn kiểm tra nguồn sau có chứa các hướng dẫn bổ sung về các tập lệnh hàng loạt.

68

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi cố gắng chạy một tệp

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause
1 trong Windows bằng tập lệnh Python.

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause
2 Tệp:

Application.exe work.xml

Tôi viết mã Python:

import os
os.system["D:\xxx1\xxx2XMLnew\otr.bat "]

Đầu ra: Khi cố gắng chạy tệp, nó chỉ cần nhấp nháy dấu nhắc lệnh và công việc không được thực hiện.

Lưu ý: Tôi cũng cố gắng với chém thay thế, nhưng nó không hoạt động.

Và tôi cũng muốn lưu đầu ra của tệp trong một tệp khác.

Bất cứ ai cũng có thể đề xuất làm thế nào tôi có thể làm cho tập lệnh có thể chạy được.

Đã hỏi ngày 29 tháng 3 năm 2011 lúc 7:37Mar 29, 2011 at 7:37

2

Điều này đã được trả lời chi tiết về vậy. Kiểm tra chủ đề này, nó sẽ trả lời tất cả các câu hỏi của bạn: Thực hiện một quy trình con không thành công

Tôi đã tự mình thử với mã này:

batchtest.py

from subprocess import Popen
p = Popen["batch.bat", cwd=r"C:\Path\to\batchfolder"]
stdout, stderr = p.communicate[]

batch.bat

echo Hello World!
pause

Tôi đã có một ví dụ BatchTest.py từ chủ đề đã nói ở trên.

Đã trả lời ngày 29 tháng 3 năm 2011 lúc 7:49Mar 29, 2011 at 7:49

das_weezuldas_weezuldas_weezul

5.9822 Huy hiệu vàng27 Huy hiệu bạc33 Huy hiệu đồng2 gold badges27 silver badges33 bronze badges

7

import subprocess

filepath="D:/path/to/batch/myBatch.bat"
p = subprocess.Popen[filepath, shell=True, stdout = subprocess.PIPE]

stdout, stderr = p.communicate[]
print p.returncode # is 0 if success

Đã trả lời ngày 10 tháng 12 năm 2012 lúc 15:05Dec 10, 2012 at 15:05

2

Thay thế \ bằng / trong đường dẫn

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
0

Đã trả lời ngày 6 tháng 1 năm 2012 lúc 17:13Jan 6, 2012 at 17:13

Raghuramraghuramraghuram

1611 Huy hiệu bạc2 Huy hiệu đồng1 silver badge2 bronze badges

1

Có lẽ là cách đơn giản nhất để làm điều này là ->

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
1

Đã trả lời ngày 23 tháng 11 năm 2017 lúc 13:57Nov 23, 2017 at 13:57

1

  1. Tốt hơn là viết tệp

    @echo off
    "Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
    pause
    
    1 theo cách mà hoạt động của nó không phụ thuộc vào thư mục làm việc hiện tại, tức là tôi khuyên bạn nên đặt dòng này ở đầu tệp
    @echo off
    "Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
    pause
    
    1:

    countdown = 10
    
    while countdown > 0:
        print ['CountDown = ', countdown]
        countdown = countdown - 1
    
    2
  2. Kèm theo filepath của tệp

    @echo off
    "Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
    pause
    
    1 trong các trích dẫn kép, tức là:

    countdown = 10
    
    while countdown > 0:
        print ['CountDown = ', countdown]
        countdown = countdown - 1
    
    3
  3. Để lưu đầu ra của một số lệnh Batch trong một tệp khác, bạn có thể sử dụng cú pháp chuyển hướng thông thường, ví dụ:

    countdown = 10
    
    while countdown > 0:
        print ['CountDown = ', countdown]
        countdown = countdown - 1
    
    4

    Hoặc trực tiếp trong tệp

    @echo off
    "Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
    pause
    
    1 của bạn:

    countdown = 10
    
    while countdown > 0:
        print ['CountDown = ', countdown]
        countdown = countdown - 1
    
    5

Đã trả lời ngày 9 tháng 3 năm 2016 lúc 2:21Mar 9, 2016 at 2:21

Tavtavtav

5576 Huy hiệu bạc8 Huy hiệu Đồng6 silver badges8 bronze badges

Bạn chỉ thiếu để làm cho nó thô. Vấn đề là với "\". Thêm r trước khi đường dẫn sẽ thực hiện công việc :]

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
6

Đã trả lời ngày 18 tháng 9 năm 2018 lúc 8:31Sep 18, 2018 at 8:31

Vì vậy, tôi làm trong Windows 10 và Python 3.7.1 [đã thử nghiệm]:

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
7

Đã trả lời ngày 7 tháng 11 năm 2018 lúc 8:55Nov 7, 2018 at 8:55

Merlinuwemerlinuwemerlinuwe

1693 Huy hiệu bạc8 Huy hiệu Đồng3 silver badges8 bronze badges

python_test.py

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
8

Điều này cung cấp đầu ra từ tệp hàng loạt để được in trên bảng điều khiển Python Idle/Running. Vì vậy, trong tập tin hàng loạt, bạn có thể lặp lại kết quả trong mỗi bước để gỡ lỗi vấn đề. Điều này cũng hữu ích trong tự động hóa khi có lỗi xảy ra trong cuộc gọi hàng loạt, để hiểu và xác định lỗi một lỗi. [Đặt "tiếng vang" trong tệp hàng loạt bắt đầu để tránh in mọi thứ]

batch_1.bat

countdown = 10

while countdown > 0:
    print ['CountDown = ', countdown]
    countdown = countdown - 1
9

Đã trả lời ngày 7 tháng 5 năm 2018 lúc 5:43May 7, 2018 at 5:43

Nếu bạn đang cố gắng gọi một tệp

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause
7 khác bên trong ________ 28-file. Bạn phải sử dụng
@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause
9 bên trong tệp ____ 28 mà bạn đang gọi. Đặt đường dẫn nên chỉ vào thư mục ở đó, ____ 27-file được đặt:

@echo off
"Path where your Python exe is stored\python.exe" "Path where your Python script is stored\script name.py"
pause
0

Stefan

10k3 huy hiệu vàng48 Huy hiệu bạc87 Huy hiệu đồng3 gold badges48 silver badges87 bronze badges

Đã trả lời ngày 17 tháng 6 năm 2013 lúc 15:13Jun 17, 2013 at 15:13

Làm cách nào để thực hiện một tệp hàng loạt?

Thực hiện các tập tin hàng loạt..
Bước 1 - Mở dấu nhắc lệnh [cmd.exe] ..
Bước 2 - Đi đến vị trí nơi. dơi hoặc. Tệp CMD được lưu trữ ..
Bước 3 - Viết tên của tệp như được hiển thị trong hình ảnh sau và nhấn nút Enter để thực thi tệp hàng loạt ..

Làm cách nào để chuyển đổi tập lệnh Python thành một tập tin hàng loạt?

Các bước để tạo một tập tin hàng loạt để chạy tập lệnh Python..
Bước 1: Tạo tập lệnh Python. Để bắt đầu, hãy tạo tập lệnh Python của bạn. ....
Bước 2: Lưu tập lệnh của bạn. Lưu tập lệnh Python của bạn [tập lệnh Python của bạn sẽ có phần mở rộng của '. ....
Bước 3: Tạo tệp Batch để chạy tập lệnh Python. ....
Bước 4: Chạy tệp hàng loạt ..

Làm thế nào để bạn thực hiện một lệnh trong Python?

Để chạy các tập lệnh Python bằng lệnh Python, bạn cần mở một dòng lệnh và nhập từ python, hoặc python3 nếu bạn có cả hai phiên bản, theo sau là đường dẫn đến tập lệnh của bạn, giống như thế này: $ python3 hello.py xin chàoThế giới!Nếu mọi thứ hoạt động ổn, sau khi bạn nhấn Enter, bạn sẽ thấy cụm từ Hello World!open a command-line and type in the word python , or python3 if you have both versions, followed by the path to your script, just like this: $ python3 hello.py Hello World! If everything works okay, after you press Enter , you'll see the phrase Hello World!

Làm cách nào để chạy tập lệnh Python từ một tập lệnh khác?

Các bước để chạy một kịch bản Python từ một kịch bản khác..
Bước 1: Đặt các tập lệnh Python vào cùng một thư mục.Để bắt đầu, hãy đặt các tập lệnh Python của bạn vào cùng một thư mục.....
Bước 2: Thêm cú pháp.Tiếp theo, thêm cú pháp vào từng tập lệnh của bạn.....
Bước 3: Chạy một kịch bản Python từ một bản khác ..

Bài Viết Liên Quan

Chủ Đề