04. 直接编辑文件命令方法
a 如何直接在文件中添加单行内容
echo "oldboy" >>/oldboy/oldboy.txt
补充: echo命令用法说明:
01. 请在屏幕上输出 oldboyedu.com信息
02. 请在屏幕上输出 1 2 3 .... 100 的数字信息
输出序列信息
a 显示连续的序列
[root@oldboyedu ~]# echo {1..100}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
[root@oldboyedu ~]# echo {01..100}
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100
b 显示不连续的序列
a 不连续有规律的序列
问题:
显示1..10 的奇数信息 1 3 5 7 9
显示1..10 的偶数信息
[root@oldboyedu ~]# echo {01..10..2}
01 03 05 07 09
[root@oldboyedu ~]# echo {02..10..2}
02 04 06 08 10
b 不连续无规律的序列
mkdir -p /oldboy/oldboy01/oldboy02/{www,bbs,blog}
练习题一:
在oldboy目录下面创建出20个文件,二十个文件名称为 oldboy01,oldboy02 ..oldboy20
touch

b 如何直接在文件中添加多行内容
[root@oldboyedu ~]# cat /oldboy/oldboy.txt
hello world
oldboy shenzhen 01
oldboy shenzhen 02
[root@oldboyedu ~]# cat >> /oldboy/oldboy.txt <<EOF
> oldboy01
> oldboy02
> oldboy03
> EOF
[root@oldboyedu ~]# cat /oldboy/oldboy.txt
hello world
oldboy shenzhen 01
oldboy shenzhen 02
oldboy01
oldboy02
oldboy03
[root@oldboyedu ~]# cat >> /oldboy/oldboy.txt <<oldboy
> oldboy04
> oldboy05
> oldboy
[root@oldboyedu ~]# cat /oldboy/oldboy.txt
hello world
oldboy shenzhen 01
oldboy shenzhen 02
oldboy01
oldboy02
oldboy03
oldboy04
oldboy05

05. 过滤筛选文件内容命令
三剑客命令
老三: grep 过滤筛选信息
老二: sed 修改替换文件内容 擅长对文件中的行进行操作
老大: awk 擅长统计分析文件内容 擅长对文件中列进行操作

grep命令如何进行过滤:
编辑一个测试文件
[root@oldboyedu ~]# cat >> /oldboy/test.txt <<EOF
> oldboy01
> oldgirl01
> olddog01
> oldboy02
> oldgirl02
> olddog02
> EOF
[root@oldboyedu ~]# cat /oldboy/test.txt
oldboy01
oldgirl01
olddog01
oldboy02
oldgirl02
olddog02
需求01: 请筛选出有oldboy的信息
[root@oldboyedu ~]# grep "oldboy" /oldboy/test.txt
oldboy01
oldboy02
需求02: 筛选有oldgirl的信息,但是要有oldgirl信息的上一行信息也显示
[root@oldboyedu ~]# grep -B 1 "oldgirl" /oldboy/test.txt
oldboy01
oldgirl01
--
oldboy02
oldgirl02
需求03: 筛选有oldgirl的信息,但是要有oldgirl信息的下一行信息也显示
[root@oldboyedu ~]# grep -A 1 "oldgirl" /oldboy/test.txt
oldgirl01
olddog01
--
oldgirl02
olddog02
需求04.筛选有oldgirl的信, 但是要有oldgirl信息的下一行和下一行信息也显示
[root@oldboyedu ~]# grep -C 1 "oldgirl" /oldboy/test.txt
oldboy01
oldgirl01
olddog01
oldboy02
oldgirl02
olddog02
需求05. 统计oldgirl信息在文件中出现了几次
[root@oldboyedu ~]# grep -c "oldgirl" /oldboy/test.txt

sed命令如何进行过滤信息
[root@oldboyedu ~]# sed -n "/oldboy/p" /oldboy/test.txt
oldboy01 edu.com
oldboy02
p print 将过滤信息输出
-n 取消原文件的所有内容输出(取消默认输出)

[root@oldboyedu ~]# awk "/oldboy/" /oldboy/test.txt
oldboy01 edu.com
oldboy02

06. 修改文件部分内容信息
01. sed命令 (师傅: 真正修改文件内容)
需求: 修改test.txt文件内容 将所有oldboy信息修改替换为 python
vim 替换: :%s#oldboy#python#g
sed 's#oldboy#python#g' /oldboy/test.txt

实践操作
[root@oldboyedu ~]# sed 's#oldboy#python#g' /oldboy/test.txt
python01 edu.com
oldgirl01
olddog01
python02
oldgirl02
olddog02
[root@oldboyedu ~]# cat /oldboy/test.txt
oldboy01 edu.com
oldgirl01
olddog01
oldboy02
oldgirl02
olddog02
[root@oldboyedu ~]# sed -i 's#oldboy#python#g' /oldboy/test.txt
[root@oldboyedu ~]# cat /oldboy/test.txt
python01 edu.com
oldgirl01
olddog01
python02
oldgirl02
olddog02

02. tr命令 (徒弟: 假装修改文件内容)
需求: 修改test.txt文件内容 将所有python信息修改替换为 oldboy
[root@oldboyedu ~]# tr "python" "oldboy" </oldboy/test.txt
oldboy01 edu.com
oldgirl01
olddog01
oldboy02
oldgirl02
olddog02
[root@oldboyedu ~]# cat /oldboy/test.txt
python01 edu.com
oldgirl01
olddog01
python02
oldgirl02
olddog02

tr用法
[root@oldboyedu ~]# echo 123|tr "123" "abc"
abc
小于号用法1:
[root@oldboyedu ~]# tr "123" "abc" < /oldboy/test01.txt
abc
[root@oldboyedu ~]# cat /oldboy/test01.txt
123

最新文章

  1. 忠告初学者学习Linux系统的8点建议
  2. C# 时间戳
  3. 为什么多数游戏服务端是用 C++ 来写
  4. JavaScript函数的四种存在形态
  5. codeforces 553D . Nudist Beach 二分
  6. linux 获取文件系统信息(磁盘信息)
  7. USACO Section 5.1 Musical Themes(枚举)
  8. freemarker报错之十三
  9. hbase 过滤器 rowfilter
  10. python高级-动态特性(20)
  11. selenium中切换浏览器不同tab 的操作
  12. Machine Learning 神器 - sklearn
  13. python中None与0、Null、false区别
  14. ajax实战用法详解
  15. AXI总线的工作流程---握手机制
  16. Maximum GCD (stringstream)题解
  17. mini Linux制作过程(25/01)
  18. RMAN恢复脚本案例
  19. debian8下pgsql的主备同步热切手动脚本
  20. 关于json格式字符串解析并用mybatis存入数据库

热门文章

  1. Java_Day7(上)
  2. idea中如何配置git以及在idea中初始化git,并push到码云
  3. PAT (Basic Level) Practice (中文)1041 考试座位号 (15 分)
  4. 【你不知道的javaScript 中卷 笔记1】javaScript中的类型与值
  5. flex 属性
  6. Wannafly Winter Camp 2020 Day 5G Cryptographically Secure Pseudorandom Number Generator - 分块
  7. Docker最全教程——从理论到实战(十七)
  8. js监听页面copy事件添加版权信息
  9. Web服务器项目详解 - 00 项目概述
  10. 添加一个layer