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

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

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    乘法运算

[]表示存在的
[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. 注意: >, 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中,并统计输出行

    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的图形手册

时间: 2024-12-29 23:27:16

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

linux云自动化运维基础知识5.6(用户管理及文件权限)

用户理解用户就是系统使用者的身份在系统中用户存储为若干窜字符+若干个系统配置文件用户信息涉及到的系统配置文件:/etc/passwd        ###用户信息用户:密码:uid:gid:说明:家目录:用户使用的shell/etc/shadow        ###用户认证信息用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日/etc/group        ###组信息 组名称:组密码:组id:附加组成员 /etc/gshadow        ###

linux云自动化运维基础知识11(ip网络 )

####1.ip基础知识####1.ipv42进制32位-----10进制 172.25.0.10/255.255.255.0172.25.0.10:ip地址255.255.255.0:子网掩码子网掩码255位对应的ip位为网络位子网掩码0对应的ip位为主机位 ####2.配置ip####<<图形化>>1.图形界面nm-connection-editor 2.文本化图形nmtui <<命令>>ifconfig 网卡 ip netmask    ##临时设定

linux云自动化运维基础知识3(系统的基本命令)

1 date watch -n 1 date     ###让date命令每秒执行一次,ctrl +c 推出监控模式 date 11181115        ###把系统时间设定为11月18日11:15 格式:月月天天小时分钟 date 111811152016.55    ##2016表示年(可以不加).55 表示秒(可以不加) -d +xday -xday        ##查看x天前或者后的时间+%....            ##设定date的输出格式 2.passwd    参数 

linux云自动化运维基础知识14(设备挂载)

####1.设备访问####1.设备识别/dev/xdxn        ##硬盘设备/dev/sda1/dev/cdrom        ##光驱/dev/mapper/*        ##虚拟设备 2.设备的使用##<设备的发现>##fdisk -l        ##查看真实存在的设备cat /proc/partitions    ##系统能够识别的设备blkid            ##系统能够挂载使用的设备iddf            ##查看设备被系统使用的情况 ##<

linux云自动化运维基础知识7(进程)

####1.进程定义####进程就是cpu未完成的工作 ####2.ps命令####ps    a    ##关于当前环境的所有进程    x| -A    ##所有进程    f    ##显示进程从属关系    e    ##显示进程调用环境工具的详细信息    l    ##长列表显示进程的详细信息    u    ##显示进程的用户信息    -a    ##显示shell前台运行命令的进程,但不保函shell本身    ps ax -o %cpu,%mem,user,group,com

linux云自动化运维基础知识2(系统的基本操作)

切换用户   如图所示:在命令提示符之后输入su - username    注意:高级用户切换到低级用户不需要密码,低级用户切换身份需要密码. 注意:此处密码无回显. 2.虚拟控制台:Ctrl+Alt+F(1|7)    进入图形            Ctrl+Alt+F(2~6) 进入虚拟控制台      Red hat Enterprise Linux Server 7.0 (Maipo)    ##系统版本      Kernel 3.10.0-123.el7.x86_64 on an

linux云自动化运维基础知识23(DNS服务)

一.DNS概述作用:提供域名解析服务正向解析:域名--ip   eg:(www.baidu.com  -- 220.181.111.188)反向解析:ip--域名   eg:(220.181.111.188 -- www.baidu.com) DNS的查询方式递归查询:客户机向自己的DNS服务器请求解析的方式.迭代查询:服务器向服务器查询的方式. DNS解析的先后顺序(由配置文件/etc/nsswitch.comf决定)1.本机缓存2.本机/etc/hosts文件 格式:3.指定的DNS服务器缓

linux云自动化运维基础知识21(selinux的初级管理)

1.什么是selinuxselinux,内核级加强型防火墙ELinux提供了一种灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中.SELinux定义了系统中每个[用户].[进程].[应用]和[文件]的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户.进程.应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查. SELinux对系统用户(system users)是透明的,只有系统管理员需要考虑在他的服务器中如何制定严格的策略.策略可以根据需要是严格的或宽松

linux云自动化运维基础知识1

如何连接VNC    依次点击:Applications------>internet------>TigerVNC viewer    VNC地址:172.25.254.250:8   [:8表示主机上的第8个网络接口,之前表示的是主机的ip地址]    注意:(1.如果连接不成功,可以确定是网络问题,首先检查网线是否连接好.         (2.老师使用的是TigerVNC,是服务端:我们使用的是TigerVNC viewer,是客户端.2.学习工具    虚拟机:   View Des