加入收藏 | 设为首页 | 会员中心 | 我要投稿 西双版纳站长网 (https://www.0691zz.com.cn/)- 数据计算、IT业界、服务器、教程、云日志!
当前位置: 首页 > 服务器 > 安全 > 正文

Linux下VIM编译器的使用以及shell编程基础

发布时间:2020-12-25 13:15:12 所属栏目:安全 来源:网络整理
导读:VIM编译器的安装与使用 vim编辑器安装 在CentOS中,执行:yum -y install vim 普通模式 h: 左移一个字符 j: 下移一行 k: 上移一行 l: 右移一个字符 PageDown(或Ctrl + F):下翻一屏 PageUp(或Ctrl + B):上翻一屏 G:移到缓冲区的最后一行 num G:移动到
副标题[/!--empirenews.page--]

VIM编译器的安装与使用

    vim编辑器安装
    在CentOS中,执行:yum -y install vim

普通模式

        h: 左移一个字符
         j: 下移一行
        k: 上移一行
        l: 右移一个字符

        PageDown(或Ctrl+F):下翻一屏
        PageUp(或Ctrl+B):上翻一屏
        G:移到缓冲区的最后一行
        num G:移动到缓冲区中的第num行
        gg:移到缓冲区的第一行

命令行模式

        普通模式下按下冒号键

        保存、退出命令:
        q:如果未修改缓冲区数据,退出
        q!:取消所有对缓冲区数据的修改并退出
        w filename:将文件保存到另一个文件中
        wq:将缓冲区数据保存到文件中并退出

        删除数据:
        x: 删除当前光标所在位置的字符
        dd: 删除当前光标所在行
        dw: 删除当前光标所在位置的单词
        d$: 删除当前光标所在位置至行尾的内容

        编辑数据:
        J: 删除当前光标所在行行尾的换行符(拼接行)
        u: 撤销前一编辑命令
        a: 在当前光标后追加数据
        A: 在当前光标所在行行尾追加数据

        编辑数据:
        r char: 用char替换当前光标所在位置的单个字符
        R text: 用text覆盖当前光标所在位置的数据,直到按下ESC键
        o: 在当前光标的下一行追加数据
        O: 在当前光标上一行追加数据

        编辑数据:
        i: 在当前光标前插入
        I:在当前光标所在行开头插入

        复制和粘贴:
        yw:复制一个单词
        y$:复制到行尾
        yy:复制整行
        p: 粘贴

可视模式

        进入可视模式,应移动光标到要开始复制的位置,并按下v键

        查找和替换:
        要输入一个查找字符串,就按下斜线(/) 键
        使用n键,表示下一个(next)

        查找和替换:
        替换命令允许你快速用另一个单词来替换文本中的某个单词。
        必须进入命令行模式才能使用 替换命令。
        命令::s/old/new/

        :s/old/g:一行命令替换所有old
        :n,ms/old/g:替换行号n和m之间所有old
        :%s/old/g:替换整个文件中的所有old
        :%s/old/new/gc:替换整个文件中的所有old,但在每次出现时提示

shell编程

    #!/bin/bash
    echo "Hello Bash"

    运行shell
    1、可执行权限
    chmod +x ./test.sh
    2、执行脚本
    ./test.sh

变量的定义和使用

  定义变量时,变量名不加美元符号($,PHP语言中变量需要)
  使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变
  使用 unset 命令可以删除变量, unset 命令不能删除只读变量

作用域:
  局部变量(尽在当前shell中有效,其他shell启动的程序无法访问)
  环境变量(所有程序均可访问)

        #!/bin/bash

        test=test.com"
        readonly test

        echo $test

        test=www.test.com

        echo $test

        web=http://test.com"

         web

        unset web

        echo $web

字符串

        #!/bin/bash

        var=100
        #字符串拼接
        str1=$var "test".cnom

        str2='wnww'$var.test.com'

        str3=www"$

        #输出字符串长度
        echo ${#str1}

        #字符串截取
        echo ${str2:1:3}

        #字符串查找
        echo `expr index $str3 w`

        #str3=$var http://www.test.com

        #echo -e $str1

        #echo -e $str2

        #echo $str3

数组

        #!/bin/bash

        arr1=(1 2 3 4 5 str)

        echo ${arr1[]}

        #使用 @ 符号可以获取数组中的所有元素
        echo ${arr1[@]}
        #echo ${arr1[*]}

        #获取数组长度
        echo ${#arr1[@]}

        #多行注释
        :<<EOF
        arr2[0]=
        arr2[3]=200

        echo ${arr2[]}
        EOF

参数

        #!/bin/bash

        echo $0

        echo $

        # $# : 传递到脚本的参数个数
        echo The number of the parameters: $#

        # $* : 以一个单字符串显示所有向脚本传递的参数
        echo All parameters: "$*

        # $! : 后台运行的最后一个进程的ID号
        # $@:与$*相同,但是使用时加引号,并在引号中返回每个参数
        echo $@

        for i in $*do
            echo $i
        done

        $@
            echo $i
        done

        # $$ : 脚本运行的当前进程ID号
        echo The Progress ID: $$

        # 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误
        echo $?

        #$- : 显示Shell使用的当前选项

基本运算符

        #!/bin/bash

        # expr 是一款表达式计算工具,使用它能完成表达式的求值操作
        # 表达式和运算符之间要有空格
        # 完整的表达式要被 ` ` 包含
        i=`expr 2 + `
        echo $i

        a=
        b=

        # 条件表达式要放在方括号之间,并且要有空格
        if [ $a != $b -o $a -eq $b ]
        then
            echo a = b
        fi

        # 乘号(*)前边必须加反斜杠()才能实现乘法运算
        echo `expr 100 * `

        # 关系运算符只支持数字,不支持字符串,除非字符串的值是数字
        # -eq 、 -ne 、 -gt 、 -lt 、 -ge 、 -le
        if [ $a -eq
        fi

        # 布尔运算符! 、 -o 、 -a
        if [ $a == 100 -a $b ==  ]
        then
            echo a=100,b=100
        fi

        if [[ $a == 100 && $b ==  ]]
        then
            echo 
        fi

        # 字符串运算符  = 、 != 、 -z 、 -n 、 str
        str1=This'

        if [ -z $str1The length of the string is 0if [ -n The length of the string is not 0if [ $str100 ]
        then
            echo This string is not empty
        fi

        # 文件测试运算符用于检测 Unix 文件的各种属性
        # -b 、 -c 、 -d 、 -f 、 -g 、 -k 、 -p 、 -u 、 -r 、 -w 、 -x 、 -s 、 -e
        file=/root/shell/hello_bashif [ -e $file ]
        then
            echo This file exists
        fi

(编辑:西双版纳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读