美文网首页上嵌嵌入式开发学习
12.8 Linux下vi命令和shell学习

12.8 Linux下vi命令和shell学习

作者: 清风纳兰 | 来源:发表于2016-12-08 23:38 被阅读36次

    笔记

    一.基本命令

    1.Ubuntu下软件的安装

    Ubuntuxia下支持的软件包格式:packagename.deb
     windows下浏览器搜索:packagename for linux

    (1).图形化界面,Ubuntu软件安装中心,搜索安装
    (2).命令行安装:apt-get
    • update:保证用户的软件包是最新的,安装软件之前建议先更新软件包
    • upgrade packagename:更新已安装的软件包
    • install packagename:安装软件
    • remove packagename:卸载软件包
    • autoremove
    • clean
    • autoclean
    (3).dpkg 用来安装下载的packagename.deb的软件

    sudo apt-get -i packagename.deb

    (4).安装软件可能碰到的问题解决
    • 安装之前更新源:sudo apt-get update
    • 安装软件:sudo apt-get install packagename
          或者sudo dpkg -i /路径/packagename.deb
    • 确定要有*.deb格式的安装包,并且路径正确!
    • 若软件不能正常安装
       执行下列语句,重新设置安装环境:sudo apt-get -f install,然后再执行安装命令
       无法获得....,/var/***/被占用,执行:ps -aux,找到命令含有apt-get的进程,使用kill命令杀死:kill 9 PID(进程号),然后再执行安装命令
       pstree:进程按树状列出来

    2.磁盘管理相关命令(了解)

    free
    df
    du
    

    3.打包压缩命令

    tar -czvf filename.tar.gz 待压缩的文件列表
    tar -xzvf 待解压缩的文件
    -z:调用gzip压缩
    -j:调用bzip2压缩
    

    4.用户管理

    • useradd 增加用户 配合-m选项,创建宿主目录
    • passwd 修改密码
    • userdel 删除用户 配合-r选项,将用户宿主目录删除

    二.vi的使用

    1.基本介绍

    一款编辑器,给予命令操作的一款编辑器
    三种模式:命令模式、输入模式、末行模式

    2.vi的安装

    (1).sudo apt-get install vim

    检查是否安装vim:
      使用vi打开一个文件,按上下左右键,若出现A,B,C,D字符样式,则说明未安装

    (2).vi的配置文件
    • 查找vi的配置文件:
    • 家目录文件下使用:ls -a
    • 终端下输入:vi,vimrc
      设置:
    set nouse=a
    set nu
    syntax on
    set autoindent
    set smartindent
    set tabstop=4
    set softtabstop=4
    set smarttab
    set shiftwidth=4
    set showmatch
    set matchtime=1
    
    (3).vi不能正常使用

    在家目录下:若vi不能正常使用,则ls -a查看家目录下时候有.vimrc配置文件,若无则重新创建,无法创建时,ls -a把./vimrc/更名,然后创建.vimrc

    3.三种模式简介

    (1).命令模式
    • 用vim打开一个文件,默认的就是命令模式
    • 此模式下,所输入的命令,不回显,即在屏幕上,看不到用户所输入的命令!
    • 在输入模式下,回到命令模式,按下Esc键即可
    (2).输入模式
    • 此模式下,可以进行文件的编辑
    • 进入输入模式:在命令模式下输入i,o,0,a
    • 退出输入模式:esc-----> 命令模式
    (3).末行模式

    在命令模式下,输入冒号,屏幕左下角会出现:,此时即进入末行模式

    4.输入模式

    vim是vi的增强版,两者命令兼容
     打开一个文件:vi filename

    (1).进入编辑模式
    i:在光标之前输入正文
    a:在光标之后插入正文
    o:在光标所在行的下一行插入正文
    0:在光标所在行的上一行插入正文
    s:替换光标之前的字符
    
    (2).文本输入

    5.命令模式

    (1).文本的快捷操作
    • 行复制
       yy:复制光标所在行的内容的内存缓冲区
       nyy:从光标所在行开始复制n行,n是个整数
    • 粘贴
       p:粘贴至光标所在行的下一行
       P:粘贴至光标所在行的上一行
    (2).字符复制

    按v进入可视模式

    v:逐个字符复制,可以从某一行的任意位置开始复制
    V:按行复制,
    

    选择要复制的正文后,按y进行复制,p键粘贴

    (3).删除和撤销
    dd:整行删除(光标所在行)
    ddn:删除从光标开始所在行开始的n行
    dw:删除光标之后的一个字
    ndw:删除光标之后的n个字
    ndb:删除光标之前的n个字
    x:删除光标所在位置的一个字符
    nx:删除光标所在位置及其后的n个字符
    u:撤销
    .:重复
    
    (4).替换
    rc:用字符c替换当前字符
    nrc:用n个字符c代替光标之后的n个字符
    
    (5).行间快速跳转
    H:跳转到当前目录的最上方
    nH:
    M:跳转到屏幕中间位置
    L:跳转到当前屏幕的最下方
    nL:
    gg:快速跳转到第一行
    G:快速跳转到最后一行
    

    6.末行模式

    (1).按Esc键,输入冒号(:)进入末行模式

    快速跳转:
      :n 跳转到指定行

    (2).保存和退出
    :q  退出
    :q! 强制退出
    :w 保存
    :w! 强制保存
    :wq 强制退出
    :wq! 保存退出
    :qa  全部退出(多文件编辑时)
    :wa 全部保存
    :wqa 全部保存退出
    
    (3).末行模式下的文件快捷操作
    :nw file 将第n行写入file文件
    :a,bw file 将文件a到b行写入file文件
    :1,.w file 将第一行到当前行写入file文件
    :f file 文件重命名
    :f 打印文件的基本信息
    
    (4).字符串(string)搜索
      /string
          正向搜索,跳转到该string第一次出现的位置
          按字母n,搜索到该string下一次出现的位置
          搜索完之后
    
    (5).多文件编辑
      vi file file1 file2 file3 ....
      分屏查看和编辑
    

    三.shell 脚本

    * 简介

    优点:
     快递开发,无需编译,实时修改....
    缺点;
     运行效率低,支持数据类型少.....

    * 简单的shell程序

        echo"hello world!"
        程序解析:
        echo 即输出双引号里面的内容
        输出完毕后自动换行
    

    * 常量

         数字常量:1 2 3 4 5
         字符常量:a b c d e
         字符串常量:"hello"  "world"
    

    * 简单的常量使用

    (1).引入
          num=3
          echo $num
          变量的赋值:
                   变量名=值
          注意:变量在赋值时,等号两边不能有空格
          $:引用变量的值
           echo;输出变量的值
    
    (2).变量名
      变量名可以由字母,数字,下划线组成,通常用大写字母表示,便于区分
      硬性规定:变量名不能以数字0~9开头
    
    (3).变量的使用
      变量在使用的时候无需指定数据类型,shell是一个动态决定数据类型语言
      变量在使用时直接赋值,即“变量名=值”。等号两侧无空格!!
      变量在引用时,形式为:$变量名
      为了区分变量:在引用时尽量使用下列形式:
      ${变量名}    或者 “$变量名”
    
    (4).变量的赋值
         变量在使用时直接赋值,即“变量名=值”。等号两侧无空格!!
         shell里面,变量的赋值均以字符串的形式进行赋值,
         若赋值时,有空格要用“”括起来!!!
    
    (5).若变量在使用时未定义,则它的值为空
    (6).echo "${NUM},${NUM1}"
              ecoh打印""里面的内容
    

    5.shell脚本程序的末尾没有分号!!

    6.基本数据类型

        整型: %d
        字符型: %c
        字符串: %s
        浮点型: %f
        注意:所有的数据类型均可以用字符串类型打印,即对应%s但是字符串类型数据,不能以整型形式打印
    

    7.printf使用

    printf "${NUM1},${NUM1}\n"
    
    (1).printf不能自动换行
    (2).按一定格式输出""里面的内容
    (3).使用printf空格问题

    printf “%d,%d\n” $NUM $NUM1(注意空格)

    (4).%m.f
    m:输出的总位数
    n:小数点后保留的位数
    若小数部分+小数点+整数部分<m,则多出的部分用空格代替输出左右对齐方式输出
    右对齐方式输出
    
    (5).%d-m.nf
    左对齐方式输出
    

    8.注释

    注释一行:
    #.....
    

    9.字符串

    (1).字符串的使用
    string=hello
    string1=world
    string2="hello,Shell"
    echo ${string}
    echo ${string1}
    echo ${string2}
    
    (2).字符串的拼接
    (3).字符串的分割

    总结

    今天学习的内容非常多,一时半会是没有办法记住的,只有先记录下来以后在实践中慢慢熟悉掌握。

    相关文章

      网友评论

      本文标题:12.8 Linux下vi命令和shell学习

      本文链接:https://www.haomeiwen.com/subject/cbgjmttx.html