linux云自动化运维基础知识4(系统结构,vim,管理输入输出,正则表达式)

简介:
  1. linux系统结构 
       linux是一个倒树结构
       linux中所有的东西都是文件
       这些文件都在系统顶级目录“/” /就是根目录
      /目录以下为二级目录这些目录都是系统装机时系统自动建立的
    如图wKiom1lvayuS9PhpAAFcI89mDag721.png



2.二级目录的作用
/bin    ##二进制可执行文件也就是系统命令
/sbin   ##系统管理命令存放位置
/boot   ##启动分区,负责系统启动
/dev    ##设备管理文件
/etc    ##大多数系统管理文件
/home   ##普通用户的家目录
/lib    ##32位系统库文件存放位置
/lib64  ##64位系统库文件存放位置
/media  ##系统临时设备挂载点                                                                                 
/mnt    ##系统临时设备挂载点
/run    ##系统临时设备挂载点
/opt    ##第三方软件安装位置
/proc   ##系统信息
/root   ##超级用户家目录
/srv,/var      ##系统数据
/sys    ##系统管理,主要是关于内核的
/tmp    ##系统临时文件存放位置
/usr    ##系统用户相关信息数据及用户自定义软件存放位置
3.文件的寻址
  (1) 绝对路径
     文件在系统的真实位置,文件名字以“/”开头

   (2)相对路径
     文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值.
4.正则表达式
  (1)通配符
     *                ###匹配0到任意字符
     ?                ###匹配单个字符
     [[:alpha:]]    ###匹配单个字母
     [[:lower:]]    ###匹配单个小写字母
     [[:upper:]]    ###匹配单个大写字母
     [[:digit:]]    ###匹配单个数字
     [[:alnum:]]    ###匹配单个数字或字母
     [[:punct:]]    ###匹配单个符号
     [[:space:]]    ###匹配单个空格
   (2){}表示不存在的或者存在的
{1..9}        ###1-9
{a..f}        ###a-f
{1,3,5}        ###135
{a,c,e}        ###a c e
{1..3}{a..c}    ###1a 2a 3a 2a 2b 2c 3a 3b 3c    乘法运算


wKioL1lvdhWgSz4tAACu04bXMn0854.png

wKiom1lvdhXB82-1AABtt5vPUNM644.png



[]表示存在的
[a-C]        ###aA bB cC
[a-c]        ###aA或者bB或者c
[1-3]        ###1或者2或者3
[145]        ###1或者4或者5
[^abc]|[!abc]    ###除了a并且除了b并且除了c

~        ###当前用户家目录
~username    ###指定的用户家目录
~+        ###当前目录
~-        ###当前目录之前所在目录

.        ###当前目录
..        ###当前目录的上一级

 

  1. 管理输入输出
    在linux系统中,标准输入的编号为0,正确输出的编号为1,错误输出编号为2

    在系统中用普通用户执行 "student"
    find /etc -name passwd 
    因为student用户权限问题会有以下输出
    find: ‘/etc/pki/CA/private’: Permission denied        ##没有进入权力,报错
    find: ‘/etc/pki/rsyslog’: Permission denied
    find: ‘/etc/audit’: Permission denied
    /etc/passwd                        ##正确输出
    find: ‘/etc/polkit-1/rules.d’: Permission denied
    find: ‘/etc/polkit-1/localauthority’: Permission denied
    find: ‘/etc/dhcp’: Permission denied
    find: ‘/etc/selinux/targeted/modules/active’: Permission denied
    find: ‘/etc/lvm/archive’: Permission denied
    find: ‘/etc/lvm/backup’: Permission denied
    find: ‘/etc/lvm/cache’: Permission denied
    find: ‘/etc/grub.d’: Permission denied
    /etc/pam.d/passwd                    ##正确输出
    find: ‘/etc/audisp’: Permission denied
    find: ‘/etc/firewalld’: Permission denied
    find: ‘/etc/cups/ssl’: Permission denied
    find: ‘/etc/ipsec.d’: Permission denied
    find: ‘/etc/libvirt’: Permission denied
    find: ‘/etc/sudoers.d’: Permission denied
    find: ‘/etc/named’: Permission denied

    2.(1)输出重定向
    find /etc -name passwd > file        ##重定向正确输出   >


    find /etc -name passwd 2> fi

    le        ##重定向错误输出   2>
    find /etc -name passwd &> file        ##重定向所有输出   &>


  2. wKiom1lyDa6hXz0FAAAjrxvEMy8929.png

                           wKiom1lyDfnDgCNBAADhro1hoQw527.png


    注意: >, 2> ,&>  都会覆盖源文件内容
    >file                                   ##清空file

    find /etc -name passwd >> file        ##追加正确输出    >>
    find /etc -name passwd 2>> file        ##追加错误输出    2>>
    find /etc -name passwd &>> file        ##追加所有输出    &>>
    注意:>> 2>> &>> 不会覆盖源文件内容,会把相应的输出字符放到文件的最后



       (2)输入重定向:格式化输入内容到文件
          tr 'a-z' 'A-Z' < westos                   cat > westos <<EOF
                                                    HELLO
                                                    WORLD
                                                    EOF



    3.管道  符号:|
      管道,将前一条命令的正确输出作为管道符后面命令的标准输入

      ls /bin | wc -l        ##统计ls

    /bin 命令输出的行数

      系统中错误(stderr)的输出是无法通过管道的。
      用 2>&1 可以把错误的输出编号由2变成1

      tee    复制输出到指定位置
      date |tee file |wc -l    ###tee命令复制date命令的输出到file中,并统计输出行

    wKiom1lyFCPQH8XNAADcP9y_fos856.png

    4.vim       命令模式####

    (1)在vim的命令模式下可以配置vim的工作方式
    :set nu            ##行号添加
    :set nonu        ##取消行号
    :set mouse=a        ##添加鼠标选择
    :set cursorline        ##行线显示

    以上设定都是临时的,
    永久设定方式
    vim /etc/vimrc        ###此文件为vim的配置文件,在此文件最后加入以上参数,加到文件中的才数不需要:



    (2).vim命令模式下关键字搜索####
    /关键字
    n向下匹配
    N向上匹配

    (3).vim命令模式下字符的管理####
        (1.字符的复制
    yl        ##复制一个字母
    y3l        ##复制3个字母
    yw        ##复制一个单词
    y3w        ##复制3个单词
    yy        ##复制一行
    y3y        ##复制3行
    p        ##复制完成后按“P”粘贴

        (2.字符的删除
    dl        ##删除一个字母
    d3l        ##删除3个字母
    dw        ##删除一个单词
    d3w        ##删除3个单词
    dd        ##删除一行
    d3d        ##删除3行


       (3.字符的剪切
    cl        ##剪切一个字母
    c3l        ##剪切3个字母
    cw        ##剪切一个单词
    c3w        ##剪切3个单词
    cc        ##剪切一行
    c3c        ##剪切3行
    esc ---> p    ##剪切过后会进入到插入模式,在执行粘贴动作时一定要退出插入模式

    (4).vim的可视化模式####

    在命令模式下按“ctrl+v”进入到可视模式
    在可视模式下可以区域选择字符

    可视模式下批量添加字符
    *>> ctrl+v 选中要加入字符所在列
    *>> 按“I”进入插入模式,写入要加入的字符
    *>> 按esc

    (5).批量修改字符####

    :%s/原有字符/替换后字符        ##只替换每一行中出现的第一个原有字符
    :%s/原有字符/替换后字符/g     ##替换所有
    :%s/^\ *//g            ##把全文行首的空格去掉,"^\ *"表示行首的空格



    (6).vim的分屏功能###
    ctrl+w s     ###上下分屏
    ctrl+w v    ###左右分屏
    ctrl+w c    ###关闭光标所在屏幕
    ctrl+w 上下左右 ###光标移动到指定屏幕
    :sp file2    ##同时编辑当前文件和file2
    (7).vim光标移动#####
    在命令模式下
    :数字        ##移动到指定的行
    G        ##文件最后一行
    gg        ##文件第一行

    在插入模式下
    i        ##光标所在位置插入
    I        ##光标所在行行首
    a        ##光标所在字符的下一个位置
    A        ##光标所在行行尾
    o        ##光标所在行下一行
    O        ##光标所在行上一行
    s        ##删除光标所在字符插入
    S        ##删除光标所在行插入

    (8).vim的退出模式
    :q        ##当用vim打开文件但没有对字符作任何操作时可直接退出
    :q!        ##当用vim打开文件并对字符作操作,放弃所有操作退出
    :wq        ##保存退出
    :wq!        ##强行保存退出,对超级用户及文件所有人生效

    (9).vim手册####
    vimtutor    ##vim的手册
    :q        ##退出vimtutor

     5.gedit 


    ctrl+n            ##在gedit中打开一个新的tab
    ctrl+s            ##保存文件
    ctrl+o            ##打开文件
    ctrl+x            ##剪切字符
    ctrl+v            ##粘贴字符
    ctrl+c            ##复制字符
    yelp help:gedit        ##gedit的图形手册

本文转自 lulu2017 51CTO博客,原文链接:http://blog.51cto.com/13132425/1950088

相关文章
|
28天前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
2月前
|
运维 监控 网络协议
|
1月前
|
Linux 调度
Linux系统结构
内核是操作系统的核心组件,负责管理系统资源和硬件设备。它提供了硬件抽象层,使得应用程序不必直接操作硬件。内核的主要功能包括: 进程管理:创建、调度和终止进程。 内存管理:分配和回收内存,提供虚拟内存功能。 设备管理:控制硬件设备的访问。 文件系统管理:管理文件和目录结构。 系统调用接口:提供系统调用,使应用程序能够与操作系统交互。
41 8
|
1月前
|
缓存 运维 监控
【运维必备知识】Linux系统平均负载与top、uptime命令详解
系统平均负载是衡量Linux服务器性能的关键指标之一。通过使用 `top`和 `uptime`命令,可以实时监控系统的负载情况,帮助运维人员及时发现并解决潜在问题。理解这些工具的输出和意义是确保系统稳定运行的基础。希望本文对Linux系统平均负载及相关命令的详细解析能帮助您更好地进行系统运维和性能优化。
52 3
|
2月前
|
存储 运维 搜索推荐
|
2月前
|
机器学习/深度学习 Linux 编译器
Linux入门3——vim的简单使用
Linux入门3——vim的简单使用
61 1
|
2月前
|
运维 网络协议 安全
Linux安全运维--一篇文章全部搞懂iptables
Linux安全运维--一篇文章全部搞懂iptables
51 1
|
2月前
|
Unix Linux 开发工具
Linux Vim的 命令大全
Linux Vim的 命令大全
27 0
|
2月前
|
Web App开发 运维 安全
1Panel:一个现代化、开源的 Linux 服务器运维管理面板
1Panel:一个现代化、开源的 Linux 服务器运维管理面板
105 0
|
6月前
|
数据库 Python
Python网络数据抓取(8):正则表达式
Python网络数据抓取(8):正则表达式
64 2
下一篇
DataWorks