码迷,mamicode.com
首页 > 系统相关 > 详细

Linux文本编辑命令

时间:2018-01-21 19:17:42      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:选项   centos   强制   打开   规则   dir   没有   替换   rtx   

  • cut 命令用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令
    技术分享图片

    #其中,cut命令中如果要指定多列,-f1可写为-f1,3,7(逗号隔开即可)

    cut -c 仅显示指定字段的内容
    cut -d指定字段的分隔符
    cut -b 仅显示行中指定直接范围的内容


    • umask 命令用来设置限制新建文件权限的掩码。新文件创建时的权限是由掩码决定的。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。
        umask 022

    设置掩码为022,则创建新文件的默认权限就是777-022为755
    即*rwxr-xr-x
    umask值存储在/etc/bashrc当中,被所有用户设置使用,存储在~/.bashrc则只针对某用户设置生效


    • ACL权限(Access Control List)即访问控制列表。主要是针对单一用户,单一文件或目录进行rwx权限的细部设定。可以针对用户(User)、群组(Group)、默认属性掩码(umask)进行设置。
      centos6当中对新建分区开启acl的过程
      1.创建分区
      fdisk /dev/sda
      n回车
      回车
      +2G回车
      w回车
      2.同步分区表
      partx -a /dev/sda
      3.创建文件系统
      mkfs.ext4 /dev/sda6
      4.开启acl支持
      tune2fs -o acl /dev/sda6
      5.查看acl
      tune2fs -l /dev/sda6 |grep option

      getfacl FILENAME/DIRECTORY

    查看文件/目录的ACL属性
    技术分享图片

            setfacl命令是用来在命令行里设置ACL(访问控制列表)。
            在命令行里,一系列的命令跟随以一系列的文件名。

    -b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留。
    -k,--remove-default:删除缺省的acl规则。如果没有缺省规则,将不提示。
    -n,--no-mask:不要重新计算有效权限。setfacl默认会重新计算ACL mask,除非mask被明确的制定。
    --mask:重新计算有效权限,即使ACL mask被明确指定。
    -d,--default:设定默认的acl规则。
    --restore=file:从文件恢复备份的acl规则(这些文件可由getfacl -R产生)。通过这种机制可以恢复整个目录树的acl规则。此参数不能和除--test以外的任何参数一同执行。
    --test:测试模式,不会改变任何文件的acl规则,操作后的acl规格将被列出。
    -R,--recursive:递归的对所有文件及目录进行操作。
    -L,--logical:跟踪符号链接,默认情况下只跟踪符号链接文件,跳过符号链接目录。
    -P,--physical:跳过所有符号链接,包括符号链接文件。
    --version:输出setfacl的版本号并退出。
    --help:输出帮助信息。
    --:标识命令行参数结束,其后的所有参数都将被认为是文件名
    -:如果文件名是-,则setfacl将从标准输入读取文件名。

        setfacl用法()

    技术分享图片
    清除默认权限

    setfacl -k file

    清除ACL属性

    setfacl -b file

                acl权限的备份及还原
                                getfacl file |directory > acl.txt
                                setfacl --restore acl.txt
    • sort

              -n 按数字排列
              -r 倒序排列,默认升序
              -t 指定分隔符
              -k 指定哪一列
              -f 忽略大小写
              -u 删除重复行
    • uniq

              去除连续重复行,往往和sort配合使用,先排序,再去重
              -c 显示重复的次数
              -d 仅显示重复行
              -u 仅显示非重复行
    • diff

              diff f1 f2 比较两个文件的不同之处
              diff -u f1 f2 > diff.log
              (此命令可以生成补丁文件,可以用patch打补丁)
    • grep

                  --color=auto 关键字高亮显示
                  -v 反向搜索
                  -i 忽略大小写
                  -n 显示行号

    技术分享图片

                    -c 不显示搜索结果,仅显示匹配的行数
                    -o 仅显示匹配到的字符串
                    -q 静默输出
                    -A #  显示搜索行及其向下相临的#行
                    -B #  显示搜索行及其向上相临的#行
                    -C #  显示搜索行及其向上和向下相临的#行
                    -e char1 -e char2 [-e charN] 多个选项间or关系
                    -w 匹配整个单词
                    -E 或egrep 支持扩展正则表达式
                    -F 或fgrep 不支持正则表达式
    • vim是一款十分强大的文本编辑器,功能繁多熟练掌握则工作效率事半功倍
      当执行vim FILENAME时,若文件存在,则直接打开文件;若文件不存在,则直接创建以FILENAME为名的文件同时打开,并且左下方会提示【new file】技术分享图片
      如果打开一个已存在的文件则左下方也会有相应提示技术分享图片

          三种主要模式
                  命令模式 (default): 移动光标,复制,剪切,粘贴,撤销,重做,搜索,进入其他模式
                      移动光标:
                          h向左移动
                          l向右移动
                          j向下移动
                          k向上移动
                          配合#h,#l,#j,#k可一次性移动#个字符
                          w跳到下一个单词的词首
                          b跳到上一个单词的词首
                          H跳到当前页首
                          M跳到当前页中
                          L跳到当前页尾
                          gg跳到整个文件的首行
                          G跳到整个文件的末行
                          ^移到非空格开头的行首
                          $移到行尾
                          #G跳到指定行,或退出模式下:#
                          Ctrl+f: 向文件尾部翻一屏
                          Ctrl+b: 向文件首部翻一屏
                          Ctrl+d: 向文件尾部翻半屏
                          Ctrl+u:向文件首部翻半屏
                      r替换一个字符
                      d剪切
                          dd剪切当前行
                          #dd剪切#行
                          dw剪切一个单词
                          d^从光标所在处剪切到行首
                          d$或D从光标所在处剪切到行尾
      
                      y复制
                          yy或Y复制当前行
                          #yy复制#行
                          yw复制一个单词
                          y^从光标所在处复制到行首
                          y$从光标所在处复制到行尾
      
                      p粘贴
                          p当前行向下粘贴或光标所在处向后粘贴
                          P当前行向上粘贴或光标所在处向前粘贴 
                  替换模式 R进入 Esc退出
      
                      从命令模式进入插入模式
                          i光标在哪从哪进入
                          I光标移至行首同时进入插入模式
                          a光标向后移一个字符同时进入插入模式
                          A光标移至行尾同时进入插入模式
                          o光标向下插入一新行同时进入插入模式
                          O光标向上插入一新行同时进入插入模式
                  插入模式:文本编辑
                  退出模式:保存、退出
                          w:保存
                          q:退出
                          q!强制退出
                          wq或x 保存并退出
                          w!当前用户为该文件所属人时,如果该文件为read only,可加上!强制保存。
                          在退出模式下返回命令模式EscEsc或Enter
                          r /path/filename 读取另一个文件的内容并将输出结果写入文件
                          w /path/filename 另存为(确认当前用户对该路径中的最后一级目录有wx权限)
                          ! command 执行某条命令,将输出结果显示在终端上
                          r! command 执行某条命令,在光标所在的当前行向下插入新行并将输出结果输入
                          .! command 执行某条命令,替换光标所在的当前行并将输出结果输入

    Linux文本编辑命令

    标签:选项   centos   强制   打开   规则   dir   没有   替换   rtx   

    原文地址:http://blog.51cto.com/11742700/2063430

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!