• 在window中模拟执行linux 脚本


    现在后端环境常常是linux系统,但很多情况下,我们的开发环境是Window系统,为了能在window下模拟linux的脚本,而且也能够ssh到linux server,我们可以在window系统中安装这样一个模拟环境 cmder,以下举例说明如何使用cmder

    脚本

    • bash 脚本:test.sh
    #!/bin/bash
    ./test.py -s http://localhost:8008/foo -i bodycontent
    exit $? 

    在sh脚本中,调用了python脚本test.py如下

    • python脚本:test.py
    #!/usr/bin/python
    
    import argparse
    import json
    import requests
    import sys
    
    
    def parseArgs():
    parser = argparse.ArgumentParser()
    requiredNamed = parser.add_argument_group('required named arguments')
    requiredNamed.add_argument('-s', '--apiurl', help='Service URL', required=True)
    requiredNamed.add_argument('-i', '--testbody', help='content body', required=True)
    return parser.parse_args()
    
    
    def invokeFunc(args):
    headers = {"Content-type": "application/json"}
    body = {"testbody": args.testbody}
    
    response = requests.post(args.apiurl, data=json.dumps(body), headers=headers)
    print (response.text)
    if response.status_code == requests.codes.ok:
    sys.exit(0)
    else:
    sys.exit(1)
    
    
    args = parseArgs()
    invokeFunc(args)
    

     

    在python脚本中第一行表示python执行的路径,这个表示在linux系统下的路径,因为需要在window下模拟执行,所以需要修改这一行用于指定python执行的路径 

    #!D:Applicationpython36python.exe在
    

      

    执行

    为了模拟在window 中bash脚本执行过程,我们需要一个模拟环境,下面是具体步骤

    下载Cmder

    https://github.com/cmderdev/cmder/releases/

    这是一个压缩包,下载解压即可用,有兩个版本可供选择,分別是 mini 与full 版,唯一的差別在有沒有內建 msysgit 工具,这是 Git for Windows 的标准配置,里面不仅仅有 Git 工具,还包含了一些 Linux 环境下常用的工具,例如 less, grep, tar, unzip, grep, sed, … 等等,如果你确定已经安装Git for Windows ,可以直接下载 mini 版即可。

    解压后,直接运行Cmder.exe就好了

    在命令提示符下键入 bash,则进入shell 脚本执行环境,进入到sh脚本目录,然后执行sh脚本,

    在Cmder窗口左下角可以看到,当前执行环境是python.exe,执行完后,又返回到bash环境

    使用SSH命令:

    我们也可以使用ssh 命令远程连接linux server,如下图所示,在命令行输入 “ssh {server name}”

  • 相关阅读:
    HDU 6125
    HDU 6129
    Super Jumping! Jumping! Jumping!
    HDU 1040 As Easy As A+B(排序)
    VS2015转VS2008
    HDU 1329 Hanoi Tower Troubles Again!(乱搞)
    HDU 1062 Text Reverse(字符串)
    HDU 1013 Digital Roots(字符串)
    HDU 1003 Max Sum(动态规划)
    HDU 1203 I NEED A OFFER!(01背包)
  • 原文地址:https://www.cnblogs.com/benfly/p/10802437.html
Copyright © 2020-2023  润新知