zoukankan      html  css  js  c++  java
  • 004 cat、head、tail、vim、cp、mv、rm

    cat

    查看文件内容 把文件内容全部显示出来 可以创建新文件 也可以修改文件 合并文件

    #语法
    cat [参数] [操作对象路径]
    -n	#显示文件时,显示文件的行号
    -A      #给文件的每一行后面加上唯一标识符
    
    #标识符限定输入重定向  命令从标准输入中输入,直到遇到标识符的分解符结束
    [root@test1 ~]# cat >123.txt<<EOF
    > 123
    > 456
    > 789
    > EOF
    [root@test1 ~]# cat 123.txt
    123
    456
    789
    
    #标准追加
    [root@test1 ~]# cat >>123.txt<<EOF
    > ooo
    > EOF
    [root@test1 ~]# cat 123.txt 
    123
    456
    789
    ooo
    
    #将多个文件合并成一个文件
    [root@test1 ~]# cat pass.txt pass.txt
    123456
    123456
    [root@test1 ~]# cat pass.txt pass.txt >new.txt
    [root@test1 ~]# cat new.txt 
    123456
    123456
    

    从文件头部开始查询

    #语法:head [操作] [操作路径]
    -n	#显示行号,从文件头部开始
    -c	#打印出前n个字节内容	(-10#10个字节去掉,打印前面所有内容)
    

    tail

    从文件尾部开始查询

    #语法:tail [操作] [操作路径]
    -n	#从文件结尾开始,打印n行
    -c	#从文件底部开始输出n个字节内容
    -f	#实时打印出文件新增内容
    -F      
    

    vim

    vi,vim是Linux常用文本编辑工具,具有很强大的编辑功能,vim相当于vi的升级版

    图1

    vi、vim编辑器的编辑流程
    1、vi	打开文件
    2、创建swp文件,用于临时存储文件修改内容
    3、选择输入模式进行修改内容
    4、进入末行模式,使用指令进行操作
    5、退出
    
    #输入模式
    1、需要指定输入模式的方法:
    	i:在光标处输入内容
    	a:在光标后插入内容
    	o:在光标下一行输入内容
    	A:在光标所在行的行尾输入内容
    
    #保存
    1、键盘的ESC
    2、按:进入末行模式
    3、执行命令操作文本
    	:set nu	#查看行号
    	:set nonu#取消行号
    	w	#保存编写的内容
    	q	#退出
    

    命令模式

    快捷键
    光标跳转到行尾 A 和 $
    光标跳转到行首 0键
    剪切一行 dd
    剪切多行 ndd
    复制一行 yy
    复制多行 nyy
    粘贴(粘贴在光标下一行) p
    粘贴多行 np
    粘贴(粘贴在光标的上一行) P
    撤销 u(每按一次撤销一步)
    强制退出 q!
    跳转到页尾 G
    跳转到页首 gg
    跳转到指定行 nG

    vim替换

    $:文件结尾
    #
    :1,$ s/root/admin/g   等价于   % s/被替换的内容/替换成的内容/g
    :开始行,结束行 s/被替换的内容/替换成的内容/g
    

    批量修改

    ①:ctrl + v : 设置选择多行
    ②:shift + i/a : 进入编辑模式
    ③:编辑内容
    ④:按ESC键(自动变)
    
    删除/复制指定n,m行
    :n,m(dy)
    

    cp

    copy的缩写,主要作用就是复制、拷贝,没有-f选项,强制覆盖只能转义

    #语法:
    cp   源文件	目标目录
    -r #选项-r	递归复制,复制目录时所使用的
    -p	#保持属性(时间戳、大小等)
    -d	#复制的时候保证软连接
    -a	#相当于-rpd,上面三种
    -t	#把源文件的位置与目标目录的位置进行交换,在批量拷贝文件时使用
    -i	#默认执行,当拷贝的文件在目标目录已经存在时,提示是否覆盖
    

    mv

    负责移动或者重命名,移动目录的时候最好是加/避免改名操作

    #语法
    mv 源文件	目标目录
    -i #系统默认执行,覆盖提示
    -f	#强制覆盖不提示,或者转义
    -t	#把源文件的位置与目标目录的位置进行交换,在批量移动的时候使用
    
    #重命名:移动到当前文件夹中
    mv mnt/ mot
    

    rm

    系统中的危险命令,

    #参数
    -i #在删除文件的时候提示你是否确认删除
    -f	#强制删除
    -r	#表示递归或者说删除目录用到的
    rm -rf ./*	#表示删除目录下的所有文件
    
    # Vim练习题一
    1) 使用vi编辑器编辑文件/1.txt进入编辑模式写入内容“hello world”
    2) 进入命令行模式复制改行内容,在下方粘贴80行
    3) 快速移动光标到文件的最后一行
    4) 快速移动光标到当前屏幕的中间一行
    5) 快速移动光标到文件的第五行
    6) 在下方插入新的一行内容“welcome to beijing”
    7) 删除刚插入的一行
    8) 撤销上一步的操作
    9) 进入扩展模式,执行文件的保存退出操作
    
    # Vim练习题二
    
    1.将/etc/passwd 复制到/root/目录下,并重命名为test.txt
    
    2.用vim打开test.txt并显示行号
    
    3.分别向下、向右、向左、向右移动5个字符,分别向下、向上翻两页
    
    4.把光标移动到第10行,让光标移动到行末,再移动到行首,移动到test.txt文件的最后一行,移动到文件的首行
    
    5.搜索文件中出现的 root 并数一下一共出现多少个/
        
    6.把从第一行到第三行出现的root 替换成admin,然后还原上一步操作
    
    8.把整个文件中所有的root替换成admin
    
    9.把光标移动到20行,删除本行,还原上一步操作
    
    11.删除从5行到10行的所有内容,还原上一步操作
    
    12.复制2行并粘贴到11行下面,还原上一步操作(按两次u)
    
    13.复制从11行到15行的内容并粘贴到8行上面,还原上一步操作(按两次u)
    
    14.把13行到18行的内容移动文件的尾部,还原上一步操作(按两次u)
    
    15.将文件中所有的/sbin/nologin为/bin/bash
    
    16.在第一行下面插入新的一行,并输入"# Hello!"
    
    17.保存文档并退出
    
    # Vim练习题三
    
    根据文件回答下列习题
    
    [root@xxx ~]# cat proxy.conf
    server {
    Listen 8080;
    Server_Name vim.OldboyEDU.com;
    location / {
    proxy_pass http://127.0.0.1:8080;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forward-for;
    proxy_intercept_errors on;
    proxy_next_upstream error timeout;
    proxy_next_upstream_timeout 3s;
    proxy_next_upstream_tries 2;
    error_page 500 502 403 404 = /proxy_error.html;
    }
    location = /proxy_error.html {
    root /code/proxy;
    }
    }
    
    1.使用vim打开proxy.conf文件
    
    2.修改Listen为listen小写,并将8080修改为80
    
    3.修改Server_Name为server_name小写。
    
    4.修改vim.OldboyEDU.com为vim.oldboy.com
    
    5.在server_name行下插入一行 root /code;
    
    6.复制5-14行的内容,然后将其粘贴到14行下面
    
    7.删除与proxy_set_header相关的两行全部删除
    
    8.如上操作完成后,在13-20行前面加上#号
    
    9.删除21-23的行,然后保存当前文件
    
  • 相关阅读:
    ASP.NET Core搭建多层网站架构【6-注册跨域、网站核心配置】
    ASP.NET Core搭建多层网站架构【5-网站数据库实体设计及映射配置】
    ASP.NET Core搭建多层网站架构【4-工作单元和仓储设计】
    ASP.NET Core搭建多层网站架构【3-xUnit单元测试之简单方法测试】
    极限编程核心价值:勇气(Courage)
    极限编程核心价值:反馈(Feedback)
    极限编程核心价值:沟通(Communication)
    极限编程核心价值:简单(Simplicity)
    张高兴的 Windows 10 IoT 开发笔记:串口红外编解码模块 YS-IRTM
    使用 Babylon.js 在 HTML 页面加载 3D 对象
  • 原文地址:https://www.cnblogs.com/zhaokunhao/p/14501743.html
Copyright © 2011-2022 走看看