zoukankan      html  css  js  c++  java
  • 脚本编程技术

    1、什么是脚本

    是一个包含一些列命令序列的文本文件。当运行这个脚本文件时,文件中包含的命令序列将得到自动执行。

    基本结构:#!指明后面用什么解析器来执行。

    由解析器和命令组成

    变量:shell脚本允许用户设置和实用自己的变量,变量可以使数字或字符串,用户无需指定其类型,也无需在使用前定义。

    注意:在赋值号的左边和右边不用空格号,#表示注释

    将doc格式的脚本转换为Linux格式下才能运行,要用dos2unix +文件名.sh命令来转换,在本光盘下的dos2unix-3.1-37.el6.i686.rpm

    2.3 参数

    同c程序一样,shell脚本中也可以使用命令行参数

    $#:传入脚本的命令行参数个数

    $*:所有命令行参数值,在各个参数值之间留有空格

    $0:命令本身(shell文件名)

    $1:第一个命令行参数

    $2:第二个命令行参数

    运行之:

    2.4数学计算

    shell脚本提供了一个专门的命令expr来计算数学表达式,例如expr 5+1,但是当要把计算的结果赋值给其他变量的时候,还必须使用反引号。var=’expr 20/10‘

    2.5.1 if语句

    shell脚本最基本的流程控制语句if-then格式:

    if [ condition ](特别提醒:方括号左右两边必须有空格,eg:if [ 5 -gt 4 ])

    then

      commands

    else

      commands

    fi

    条件比较

    比较操作              整数操作                      字符串操作

    相同                    -eq                             =

    不同                    -ne                             !=

    大于                    -gt                              >

    小于                     -lt                             <

    大于等于                -ge                       

    小于等于                -le

    为空                      -z

    不为空                   -n

    2.5.2 for 语句

    shell脚本提供了for命令,用于创建类似于C语言编程中for语句一样的循环。使用格式:

    for var in list(注意var会取list里面的每一项)

    do

      commands

    done

    2.5.3 while语句

    shell脚本提供了while命令,用于创建类似于C语言编程中while语句一样的循环。使用格式:

    while condition

    do

      commands

    done

    2.6 sed编辑器

    sed(stream editor):流式编辑器又名行编辑器,每次只编辑一行,使用格式如下:

    sed [操作选项] ‘命令’  文件名

    常用操作选项:

    -n:指定处理后只显示改行

    -e:进行多项编辑任务

    -i:直接修改读取的文件内容,而不是由屏蔽输出

    常用命令选项:

    p 打印匹配行

    a 新增

    c 替代一行

    d 删除定位行

    s 替代一行中的某些部分

    3、awk分析器

    它是一个强大的文本分析工具,它把文件逐行的读入,以空格为默认分隔符将每行分割为多个字段

    使用方式:

    last -n 5表示最近5次登录系统的用户。$1表示第一个字段,默认以空格号为分隔符,-F用于指定分隔符

    打印第一列等于root的那一行的信息

    Qcd分析

    ,关闭终端,重新打开,主要是使环境变量生效。它主要是帮助我们去记忆我们经常要用到的一些目录。

    保存当前目录。

    然后使用qcd -l 把记录的目录列出来

    -e

    表示进入到第一个目录。

  • 相关阅读:
    struts2+ajax实现异步刷新
    ajax实现异步刷新
    AJAX学习总结
    Java中的日期工具类
    jsp页面中用户注销的写法
    封神台靶场:第七章:GET THE PASS! 【技能点:进程中抓下管理员明文密码】
    封神台靶场:第六章:SYSTEM!POWER!【配套课时:webshel​​l控制目标实战演练】
    封神台靶场:第五章:进击!拿到Web最高权限!【配套课时:绕过防护上传木马实战演练】
    封神台靶场:第四章:为了更多的权限!留言板!【配套课时:cookie伪造目标权限 实战演练】
    封神台靶场:第三章:爆破管理员账户登录后台【配套课时:burp到支付和暴破 实战演练】
  • 原文地址:https://www.cnblogs.com/gary-guo/p/5585321.html
Copyright © 2011-2022 走看看