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

12day echo {1..100} << 三剑客命令的更多相关文章

  1. echo "scale=100; a(1)*4" | bc -l 输出圆周率

    突然看到echo "scale=100; a(1)*4" | bc -l可以输出圆周率,很惊奇,后来发现很简单. 首先bc是“basic calculator”的缩写,就是初级的计 ...

  2. Linux常用基本命令:三剑客命令之-awk基础用法

    awk是一个超级强大的文本格式化处理工具,他与grep, sed命令被成为linux 三剑客命令 三剑客命令的特点: grep:只要用来匹配和查找文本 sed: 编辑匹配到文本 awk: 格式化文本, ...

  3. linux 三剑客命令(grep,sed ,awk)

    grep 命令 :强大的文本’搜索’工具    1.grep   -n   'word'  file_name 在file_name文件中找到word所在的所有行并显示.-n 为显示行号.     2 ...

  4. 100个命令Linux常用命令大全

    Linux常用命令大全100条: 1,echo "aa" > test.txt 和 echo "bb" >> test.txt//>将原 ...

  5. Linux学习笔记:常用100条命令(一)

    linux常用命令 1.关机 shutdown -h now 立刻关机 poweroff shutdown -r now 立刻重启 reboot logout 注销 2.进入图形界面 startx 3 ...

  6. Liunx常用的100条命令汇存

    1.关机 shutdown -h now 立刻关机 poweroff shutdown -r now 立刻重启 reboot logout 注销 2.进入图形界面 startx 3.vi编辑器 [vi ...

  7. Linux常用基本命令:三剑客命令之-awk内置变量与自定义变量

    AWK中,变量分为两种:内置变量与自定义变量. 常见的内置变量有: FS:输入字段分隔符, 默认为空白字符 OFS:输出字段分隔符, 默认为空白字符 RS:输入记录分隔符(输入换行符), 指定输入时的 ...

  8. Linux学习笔记:常用100条命令(二)

    linux常用命令 1.vi中复制快捷键 yy --复制 p --粘贴 2.vi中保存退出 ZZ 3.linux解压zip unzip 4.查看软件组包 yum grouplist 5.安装组包 yu ...

  9. 数据仓库002 - 复习Linux shell命令 - echo bash_profile bashrc which命令的理解 alias history

    1.echo 打印 . echo 的作用是在屏幕上打印输出内容,与文件和持久化可以理解为没有丝毫关联.如:在屏幕上打印“ echo 的作用是打印文字! ” 实例1:输出系统的环境变量名称 $PATH ...

随机推荐

  1. maven发布java-分支构建

    1.安装parameter插件 2. 新建maven项目 3.配置maven项目 4.配置maven项目2 5.配置maven项目3 6. 模拟开发给提交打tag标签 7.版本发布 8.tag获取并构 ...

  2. JMeter-查找元素

    参考文档:https://jmeter.apache.org/usermanual/hints_and_tips.html 有时很难使用变量或包含某个URL或参数的方法在“测试计划”树和元素中找到. ...

  3. springMVC请求访问的整个过程

    //以上个随笔(springMVC项目配置文件)为基础,详述springMVC请求的整个过程流向 web.xml                                            ...

  4. codechef Future of draughts

    难度 super-hard 题意 官方中文题意 做法 定义1:\(G\)为邻接矩阵,\(I\)为单位矩阵 定义2:\(H\)为转移矩阵,可以不动,即\(H=G+I\) 定义3:\(e_i(x_1,.. ...

  5. MST Unification CodeForces - 1108F

    #include<iostream> #include<cstring> #include<algorithm> using namespace std; ; in ...

  6. 问题 D: 八皇后

    #include <cstdio> #include <vector> #include <algorithm> using namespace std; cons ...

  7. vue自学入门-5(vuex state)

    vue自学入门-1(Windows下搭建vue环境) vue自学入门-2(vue创建项目) vue自学入门-3(vue第一个例子) vue自学入门-4(vue slot) vue自学入门-5(vuex ...

  8. linux - 服务器性能评估

    影响Linux服务器性能的因素 cpu 内存 磁盘IO 网络IO 系统性能评估标准 影响性能因素 好 坏 糟糕 CPU user% + sys%< 70% user% + sys%= 85% u ...

  9. 牛客练习赛53-E 老瞎眼 pk 小鲜肉

    Problem 这题的题意大概是 给出一段长度为\(n\) 的区间 \(q\)次询问求 \(L\)~ \(R\) 这个区间内 最短的一段区间 \(l\)~\(r\) 使得 \(\oplus_{i=l} ...

  10. 《深入理解java虚拟机》读书笔记一——第二章

    第二章 Java内存区域与内存溢出异常 1.运行时数据区域 程序计数器: 当前线程所执行的字节码的行号指示器,用于存放下一条需要运行的指令. 运行速度最快位于处理器内部. 线程私有. 虚拟机栈: 描述 ...