os、sys、argparse、subprocess模块

import sys

# 实现从程序外部向程序传递参数。
# print(sys.argv)
# 程序中间的退出,arg=0为正常退出。
# print(sys.exit(['0']))
# 获取系统当前编码,一般默认为ascii。
print(sys.getdefaultencoding())


# 判断是否在windows还是linux下
    if 'win' in sys.platform:
        bag = os.getcwd() + '\\' + lib
    if 'linux' in sys.platform:
        bag = os.getcwd() + '/' + lib
# 加入环境变量
    sys.path.append(bag)
# __file__是文件路径名

# 获取当前文件的绝对路径
    os.path.abspath(__file__)
# 获取当前文件所在目录
    os.path.dirname(os.path.abspath(__file__))
# 判断文件是否存在
    os.path.exists('xxx/xxx/filename') 

# 当前文件夹路径
curry_dir = os.path.dirname(os.path.abspath(__file__))
libsPath = os.path.abspath(os.path.join(curry_dir, '../', 'libs'))
sys.path.append(libsPath)
def opt():
    parser = argparse.ArgumentParser(description='命令行中传入命令')
    parser.add_argument('-choice', required=True, help='<1:暴力破解;2:字典;3:字典+规则集>')
    parser.add_argument('-host', required=True, help='<host(主机)>')
    parser.add_argument('-port', type=int, help='<port(端口)>', default=23)
    parser.add_argument('-username', required=True, help='<username(用户名)>')
    parser.add_argument('-password', required=True, help='<password(密码)>')
    parser.add_argument('-timeout', type=int, help='<timeout(间隔时间)>', default=10)
    return parser.parse_args()


args = opt()
classify = args.choice
port = args.port
username = args.username
password = args.password
timeout = args.timeout
host = args.host
# 执行cmd命令的模块
import subprocess

popen = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
outs = popen.communicate()
# result = outs[0].decode('gbk')
result = outs[0].decode('utf-8')

 

posted @ 2021-11-25 17:44  167  阅读(86)  评论(0)    收藏  举报