zoukankan      html  css  js  c++  java
  • 文件控制

    cat:将文件的#所有内容#都在命令行中显示出来。例如要查看/etc/selinux/config文件内容
    cat /etc/selinux/config

    more/less:提供一个浏览器,将文件内容在浏览器用分页显示。
    less /etc/httpd/conf/httpd.conf
    “q”退出浏览器

    head:从文件最上面往下显示n行
    tail:从文件最下面往上显示n行

    例如查看/etc/httpd/conf/httpd.conf的前15行
    head -15 /etc/httpd/conf/httpd.conf

    高级用法显示文件的11~15行
    head -15 /root/test/ | tail -5
    tail -10 /root/test/ | head -5

    请显示/etc/httpd/conf/httpd.conf文件的第199行是什么
    head -199 /etc/httpd/conf/httpd.conf | tail -1

    grep:通过某种条件,检索显示文件内容(看你想看的,屏蔽你不想看的)
    例句
    grep haha /root/test——显示test文件中所有带haha的行
    grep ^haha /root/test——显示以haha开头的行
    grep haha$ /root/test——显示以haha结尾的行
    在条件前加-v意为不显示符合条件的行
    高级用法
    配合管道符用来检索过滤管道符右侧命令的输出结果
    例如
    df -hT | grep boot$
    显示boot结尾那行的磁盘占用信息
    ls -lh | grep ^d
    显示目录中所有文件夹的详细信息

    实际案例
    现在需要显示httpd.conf中的有效行(去掉#开头的注释行,去掉空格行)
    grep -v ^# /etc/httpd/conf/httpd.conf | grep -v ^$

    现在需要显示httpd.conf中的有效行(去掉#开头的注释行,去掉空格行)中包含Server的行中以host结尾的行
    grep -v ^# /etc/httpd/conf/httpd.conf | grep -v ^$ | grep Server | grep host$

    wc:统计文件内容
    wc -l 文件:统计文件一共多少行
    高级用法
    通过管道符统计管道符左侧命令的输出结果有多少行
    grep -v ^# /etc/httpd/conf/httpd.conf | grep -v ^$ | wc -l
    显示去掉注释去掉空行还剩多少有效行

    find / -name ".*" -a -type d | wc -l

    ★★★★★tar归档工具
    打包
    tar cfz 包的存放位置 被打包1 被打包2 被打包3。。。。
    tar cfj 包的存放位置 被打包1 被打包2 被打包3。。。。
    例句
    tar cfz /root/etc.tar.gz /etc/ /bin/ /sbin/
    tar cfj /root/etc.tar.bz /etc/ /bin/ /sbin/
    tar cf /root/etc.tar /etc/ /bin/ /sbin/
    ls -lh /root/查看压缩后的文件信息
    解包
    tar xfz 包的存放位置 -C 解压缩的目的地
    tar xfj 包的存放位置 -C 解压缩的目的地
    例句
    tar zxf /root/etc.tar.gz -C /tmp

    查看包内容
    tar tfz /root/etc.tar.gz
    tar tfj /root/etc.tar.bz

    vi(vim)在字符端的文本编辑器
    3种工作模式
    刚进去vim编辑器的时候会在命令模式
    命令模式:在命令模式下所有的案件均为快捷键
    在命令下按a,i,o会进入(插入)输入模式,a光标后一格插入信息,i光标所在位置插入信息,o另起一行插入信息
    在(插入)输入模式:下所有的按键都成为(插入)输入信息
    在(插入)输入模式下按esc退回命令模式

    vim /root/tang.txt(如果文件已存在则为打开文件进行编辑,如果文件不存在,则为新建文件且进行编辑)

    在命令模式下按下“:”会进入末行模式(查找,替换,保存,置入等高级搞错需要在末行模式使用特殊命令完成)
    末行模式下按esc回到命令模式

    命令模式下常用命令
    gg:跳转到文件首行
    G:跳转到文件尾行
    xG或者xgg:跳转到x行(x为数字)
    :set nu(在末行模式中输入显示行号的命令)
    x和del:删除光标所在位置的字符
    dd:删除光标所在行
    xdd:从光标所在位置向下删除x行(x为数字)
    yy:复制光标所在行
    xyy:从光标所在位置向下复制x行(x为数字)
    p:光标所在行往下粘贴(粘贴一次使用)
    P:光标所在行往上粘贴(连续粘贴多次使用)
    /关键字:从光标所在位置向下文查找
    ?关键字:从光标所在位置向上文查找
    在激活查找功能以后,n跳转到下一个目标,N跳转到上一个目标
    u:全文撤销一次操作(类似windows中的ctrl+z)
    U:只撤销光标所在行一次
    ZZ:保存退出,等同于末行模式:wq

    末行模式常见命令
    :w——保存当前内容
    :w 文件路径——当前另存为其他文件
    :q——退出不保存
    :q!——强制退出不保存
    :wq或者:wq!
    :e——用当前vi编辑器打开另外一个文件(当前文件就退出了)
    :r——将另外一个文件的内容置入到当前文件光标所在行往下
    例: :w /root/newfile
    将把当前编辑的文件另存到/root目录下,文件名为newfile

       :e  ~/install.log
     将直接打开当前用户宿主目录中的install.log文件进行编辑
    
       :r  /etc/filesystems
    
      将把系统文件/ec/filesystems中的内容复制到当前文件中
     
       :r /root/test
       就会将/root/test文件的内容置入当前文件中
    


    :sp——分屏编辑多个文件
    按住ctrl再按一下w,放开左手,用↑↓箭头切换多个文件
    例如
    :sp /root/test

    查找替换常见命令
    :50,90 s/Server/fuwuqi/g——替换50行到90行中所有的Server为fuwuqi
    g的作用:如果一行中有3处可替换,在没有g的情况下,只替换第一处,就开始查找下一行了,有g的话3处都会替换
    :% s/Server/fuwuqi/g——替换全文的Server为fuwuqi
    补充:可以选择在g的后面加个c,意为交互式替换。

    例: :% sub /initdefault/bootdefault/g
    将会把当前文件中的所有的initdefault字符串替换为bootdefault

         :5,15  sub /initdefalt/default/g
        将文档中的第5-15行中的initdefault字符串换成default  
    

    vi编辑器实验
    使用vim编辑器在/root/下创建你自己名字的文件例如tangrui.txt
    在文件中输入你的班级和名字,然后在文件中复制你的班级和名字行5次
    将/root/install.log文件的内容置入到你的文件中,并且从第50行开始向下删除9999行
    使用查找替换将s2t117替换为benet
    最后保存退出

  • 相关阅读:
    Bash简单介绍
    三大框架常遇的错误:hibernate : object references an unsaved transient instance
    第二十八篇: 学习笔记
    oracle表空间查询维护命令大全之二(undo表空间)
    JSON 数据的系统解析
    MySQL字符串函数
    HDU ACM 1025 Constructing Roads In JGShining's Kingdom->二分求解LIS+O(NlogN)
    实时竞价RTB广告平台_传漾科技_中国领先的智能数字营销引擎
    秒聘网-产品经理招聘,免费、专注、极速
    “小鸟推送”从DSP做到营销效果最大化,挂牌新三板后正在寻求B轮定增
  • 原文地址:https://www.cnblogs.com/guarderming/p/7604187.html
Copyright © 2011-2022 走看看