python实现自定义执行文件命令


前言


一、python实现自定义命令

import subprocess
import sys
from argparse import ArgumentParser
from subprocess import call


def main():
    parser = ArgumentParser(description="Run migrations, create superuser, and run server.")
    parser.add_argument("-ms", "--makemigrations", action="store_true", help="Run migrations.")
    parser.add_argument("-m", "--migrate", action="store_true", help="Run migrations.")
    parser.add_argument("-u", "--superuser", action="store_true", help="Create superuser.")
    parser.add_argument("-r", "--runserver", action="store_true", help="Run server.")
    
    args = parser.parse_args()

    if args.makemigrations:
        call(["python", "manage.py", "makemigrations"])
    if args.migrate:
        call(["python", "manage.py", "migrate"])
    if args.superuser:
        call(["python", "manage.py", "createsuperuser"])
        # username = "admin"
        # email = "[email protected]"
        # password = "password"
        # call(
        #     ["python", "manage.py", "createsuperuser", "--noinput", "--username", username, "--email", email,
        #      "--password", password])
        # process = subprocess.Popen(["python", "manage.py", "createsuperuser", ""], stdout=subprocess.PIPE,
        #                            stderr=subprocess.PIPE)
        # stdout, stderr = process.communicate()
        # output = stdout.decode('utf-8') + stderr.decode('utf-8')
        # print(output)
        # print(f"Superuser '{username}' created with email '{email}' and password '{password}'.")
    if args.runserver:
        call(["python", "manage.py", "runserver", "ip"])


if __name__ == "__main__":
    main()

猜你喜欢

转载自blog.csdn.net/qq_45868731/article/details/134627573