Hướng dẫn how do i run multiple python scripts consecutively? - làm cách nào để chạy nhiều tập lệnh python liên tiếp?

Tôi có thể chạy nhiều tập lệnh Python đồng thời từ một kịch bản bash như thế này;

#!/bin/bash
python pr1.py & 
python pr2.py &
python aop.py &
python loader.py &

Nhưng điều gì sẽ xảy ra nếu tôi muốn một đợt bắn đồng thời và sau khi họ chạy, hãy bắt đầu một số tuần tự hơn. Điều này có hoạt động không?:

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py

Đã hỏi ngày 6 tháng 2 năm 2017 lúc 16:32Feb 6, 2017 at 16:32

1

Khi bạn đặt và cuối cùng, nó sẽ chạy như một quá trình nền. Do đó tất cả các tập lệnh kết thúc với & chạy song song.

Để chạy 3 tập lệnh khác theo thứ tự tuần tự, bạn có thể thử cả hai:

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
2 chỉ chạy tập lệnh tiếp theo nếu tập lệnh trước đã chạy thành công

python loader.py && python cain.py && python able.py 

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
3 Chạy các tập lệnh liên tục không phân biệt kết quả của tập lệnh trước

python loader.py || python cain.py || python able.py

Đã trả lời ngày 6 tháng 2 năm 2017 lúc 16:40Feb 6, 2017 at 16:40

v.coderv.coderv.coder

1.7422 Huy hiệu vàng13 Huy hiệu bạc23 Huy hiệu đồng2 gold badges13 silver badges23 bronze badges

1

Trên tập lệnh bash của bạn, bạn chỉ cần thêm lệnh

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
4 như thế này:

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
wait
python loader.py
python cain.py
python able.py

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
4, rõ ràng, sẽ chờ tất cả các công việc [nền tảng mà bạn đã bắn] để hoàn thành để nó tiếp tục.

Đã trả lời ngày 6 tháng 2 năm 2017 lúc 16:45Feb 6, 2017 at 16:45

Carlos Afonsocarlos AfonsoCarlos Afonso

1.8591 Huy hiệu vàng13 Huy hiệu bạc22 Huy hiệu đồng1 gold badge13 silver badges22 bronze badges

Với lệnh & bạn đang chạy các tập lệnh trong nền. Bạn có thể thêm một séc trong một vòng lặp để chạy các công việc chỉ huy và xem liệu nó có tiếp tục trả về một danh sách các công việc không. Khi nó dừng lại, bạn có thể tiếp tục với loạt cuộc gọi Python tiếp theo của mình.jobs and see if it continues to return a list of jobs. when it stops you can continue with your next batch of python calls.

Đã trả lời ngày 6 tháng 2 năm 2017 lúc 16:40Feb 6, 2017 at 16:40

1.7422 Huy hiệu vàng13 Huy hiệu bạc23 Huy hiệu đồngLhasaDad

Trên tập lệnh bash của bạn, bạn chỉ cần thêm lệnh

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
4 như thế này:1 gold badge12 silver badges17 bronze badges

1

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
4, rõ ràng, sẽ chờ tất cả các công việc [nền tảng mà bạn đã bắn] để hoàn thành để nó tiếp tục.

#1.py
import time
time.sleep[3]
print["First script"]

#2.py
import time
time.sleep[3]
print["Second script"]

Đã trả lời ngày 6 tháng 2 năm 2017 lúc 16:45

#!/bin/bash
python 1.py &
python 2.py &

Carlos Afonsocarlos Afonso

#!/bin/bash
python 1.py
python 2.py

1.8591 Huy hiệu vàng13 Huy hiệu bạc22 Huy hiệu đồng

Với lệnh & bạn đang chạy các tập lệnh trong nền. Bạn có thể thêm một séc trong một vòng lặp để chạy các công việc chỉ huy và xem liệu nó có tiếp tục trả về một danh sách các công việc không. Khi nó dừng lại, bạn có thể tiếp tục với loạt cuộc gọi Python tiếp theo của mình.Feb 6, 2017 at 16:42

Lhasadadlhasadadpmuntima

1.6261 Huy hiệu vàng12 Huy hiệu bạc17 Huy hiệu đồng5 silver badges13 bronze badges

Python là một ngôn ngữ lập trình mạnh mẽ cho phép bạn thực hiện hàng tấn thứ. Đôi khi bạn có thể cần phải chạy nhiều tập lệnh Python từng chữ cái này từng bảng, theo một chuỗi. Bạn cũng có thể muốn chạy một tập lệnh Python chỉ sau khi bản trước đã thực hiện. Trong bài viết này, chúng tôi đã học được cách chạy các tập lệnh Python theo trình tự.

Nó khá dễ dàng để chạy các tập lệnh Python theo trình tự. Hãy để chúng tôi nói rằng bạn có script script1.py, script2.py và script3.py mà bạn muốn chạy hết cái này đến lần khác.

Dưới đây là mã để chạy các tập lệnh này một cách tuần tự lần lượt.

import subprocess

program_list = ['script1.py', 'script2.py', 'script3.py']

for program in program_list:
    subprocess.call[['python', 'program']]
    print["Finished:" + program]

Trong mã trên, chúng tôi sử dụng quy trình phụ. Việc trả lại điều khiển trở lại các chức năng gọi chỉ sau khi chương trình được gọi đã hoàn thành thực thi.

Nếu mã trên không hoạt động trên hệ thống của bạn, bạn có thể thử sử dụng mã sau, nơi chúng tôi sử dụng chương trình mà không cần báo giá.

import subprocess

program_list = ['script1.py', 'script2.py', 'script3.py']

for program in program_list:
    subprocess.call[['python', program]]
    print["Finished:" + program]

Ngoài ra, bạn cũng có thể sử dụng hàm Exec [] để chạy các tập lệnh này lần lượt.

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
0

Bạn cũng có thể chỉ cần tạo một chuỗi có tên/đường dẫn đến các tập lệnh khác nhau, chạy vòng lặp cho nó và gọi tập lệnh shell trong mỗi lần lặp.

#!/bin/bash
python pr1.py & 
python pr2.py &
python ap.py &
python loader.py
python cain.py
python able.py
1

Trong bài viết này, chúng tôi đã thấy một số cách để chạy các kịch bản Python từng cách khác theo cách tuần tự. Thông thường, các quản trị viên hệ thống yêu cầu chạy nhiều tập lệnh Python một cách tuần tự để tự động hóa các tác vụ và xử lý nhất định. Họ có thể sử dụng phương pháp này để chạy một loạt các tập lệnh trên hệ thống của họ, mà không cần thực hiện thủ công từng loại riêng lẻ. Bạn cũng có thể thêm mã trên trong một tập lệnh Python khác và lên lịch Cronjob để chạy tập lệnh Python đó một cách thường xuyên. Điều này sẽ hoàn toàn tự động hóa ngay cả cuộc gọi tuần tự của các tập lệnh Python.

Cũng đọc:

Cách tải xuống tệp đính kèm từ Gmail bằng Shell Scripthow để thực hiện tìm kiếm Google từ TerminalHow sang sao lưu WordPress sang Dropboxhow để tải xuống tệp đính kèm từ Gmail bằng Pythonhow để đọc dòng tệp theo dòng vào danh sách Python
How to Do Google Search from Terminal
How to Backup WordPress to Dropbox
How to Download Attachment from Gmail using Python
How to Read File Line by Line Into Python List

Bài viết liên quan:

Bài Viết Liên Quan

Chủ Đề