zoukankan      html  css  js  c++  java
  • shell脚本--eval执行shell命令

       和其他语言的eval功能差不多,都是将一个保存执行语句的变量作为参数,eval会让变量所保存的语句执行。

      下面是一个执行表单提交的命令:注意,这里只是示例,应用中不要这么使用,很危险

    #!/bin/bash
    #index.cgi
    
    echo "Content-Type:text/html;charset=utf-8"
    echo
    
    cat << AAA
        <html>
        <head>
            <title>run shell</title>
        </head>
        <body>
        <form method="post">
            请输入要执行的shell命令:<input type="text" name="code">
            <input type="submit" value="run">
        </form>
        <pre>
    AAA
    if [ $REQUEST_METHOD = "POST" ];then
        #使用cat或者tee接受post的方法
        #query_string=`cat`
        query_string=`tee`
        code=`echo $query_string | sed 's/=/ /g' | awk '{print $2}' | sed 's/+/ /g'`
        echo "您输入的命令是 "$code
        eval $code
    fi
    cat << AAA
        </pre>
        </body>
        </html>
    AAA
    

      尝试提交命令 ls -la,运行结果如下:

  • 相关阅读:
    纹理加载和异步
    地板上创建批量小方块
    创建自定义几何体(以立方体为例)
    WTForms
    angular和vue的差别
    vuejs简单介绍特点
    angularjs简单介绍和特点
    flask重要点
    redis
    DRF之认证组件源码解析
  • 原文地址:https://www.cnblogs.com/-beyond/p/8567592.html
Copyright © 2011-2022 走看看