day 10 greb 重定向

 

Day 10

 

作者:翟玉龙

归档:课堂笔记

2019/3/13

快捷键:

Ctrl + 1    标题1

Ctrl + 2    标题2

Ctrl + 3    标题3

Ctrl + 4    实例

Ctrl + 5    程序代码

Ctrl + 6    正文

格式说明:

蓝色字体:注释

黄色背景:重要

绿色背景:注意

老男孩教育教学核心思想6重:重目标、重思路、重方法、重实践、重习惯、重总结

学无止境,老男孩教育成就你人生的起点!

联系方式:

网站运维QQ交流群:

Linux 385168604架构师390642196

Python 29215534大数据421358633

官方网站:

http://www.oldboyedu.com 

目录

学无止境,老男孩教育成就你人生的起点!... 1

第1章 课堂思想... 1

1.1 如何提升自学能力... 1

1.1.1 养成主动看书的习惯... 1

1.1.2 养成预习的习惯... 1

(工作中领导分配任务,让你去搞定的模拟)... 1

1.1.3 课堂上要积极思考,对老师提问的问题主动回答... 1

1.1.4 对老师留的课后拓展的作业要能够完成。... 1

1.1.5 对学习的内容要深度总结... 1

1.1.6 课后遇到不会的不要轻易问别人,要学会自己解决问题。... 1

1.1.7 提升阅读外语的能力... 1

第2章 基本命令... 1

2.1 Tr  替换/删除字符... 1

2.2 Greb   过滤  (重要性 前三)... 2

2.2.1 Greb参数... 2

2.2.2 Greb参数的应用... 2

第3章 重定向符号... 3

3.1 >   标准输出重定向... 3

3.2 >>追加输出重定向... 4

3.3 < 标准输入重定向... 4

3.4 << 追加输入重定向,箭头方向就是数据流向... 5

3.5 2>错误输出重定向箭头方向就是数据流向,吧左边的报错输入到右边(覆盖)... 5

3.6 2>>错误追加输出重定向,箭头方向就是数据流向,把左边的报错输入到右边(追加)... 5

3.7 如何保存替换字符后的文件... 5

3.8 <<. 5

第4章 Linux文件属性描述... 7

4.1 文件属性... 7

4.2 第二列详解... 8

(1)第二列第一个字符:文件类型... 8

 

 

 

 

                                                            

[if !supportLists]第1章 [endif]课堂思想

[if !supportLists]1.1 [endif]如何提升自学能力

[if !supportLists]1.1.1 [endif]养成主动看书的习惯

[if !supportLists]1.1.2 [endif]养成预习的习惯

(工作中领导分配任务,让你去搞定的模拟)

[if !supportLists]1.1.3 [endif]课堂上要积极思考,对老师提问的问题主动回答

对于不会的要主动发问

[if !supportLists]1.1.4 [endif]对老师留的课后拓展的作业要能够完成。

[if !supportLists]1.1.5 [endif]对学习的内容要深度总结

(思维导图总结,画图总结等等)

知识======》短时记忆======》编码加工======》长时记忆(存储大脑里)======》提取

[if !supportLists]1.1.6 [endif]课后遇到不会的不要轻易问别人,要学会自己解决问题。

笔记、书、搜索引擎、加一些Linux交流群、身边的人。

[if !supportLists]1.1.7 [endif]提升阅读外语的能力

通过计算机技术知识反向学习外语

学过的命令记录对应意思的英文。

Fhs目录层次标准里去查或者man cp 看名字

 

总结100个报错英语

[if !supportLists]第2章 [endif]基本命令

[if !supportLists]2.1[endif] Tr  替换/删除字符9

(Linux里严格区分大小写)

 

[[email protected]~]# cat test.txt

Welcome tooldboy training.

we areexcellent.

[[email protected]~]# tr "w" "9" < test.txt

Welcome tooldboy training.

9e areexcellent.

[[email protected]~]# tr w 9 < test.txt

Welcome tooldboy training.

9e areexcellent.

所有字符尽量加双引号。

[if !supportLists]2.2 [endif]Grep   过滤 (重要性 前三)

※※※※※※

[if !supportLists]2.2.1 [endif]Grep参数

--color=auto   给筛选出来的东西上色

-v            invert取反 ※※

-i            ignore不区分大小写

-n            显示行号(对过滤的内容显示它在原文件中的行号)※※

-w           按单词为单位过滤※※

-o            只显示过滤的内容

-E            扩展的grep,即egrep※※

[if !supportLists]2.2.2 [endif]Grep参数的应用

-i 的应用

[[email protected]~]# cat test.txt  

Welcome to oldboy training.

we are excellent.

[[email protected]~]# grep -i "w" test.txt

Welcome to oldboy training.

we are excellent.

[[email protected]~]# grep  "w" test.txt

we are excellent.

[[email protected]~]# grep -iv "w" test.tx

-w的应用

 [[email protected] ~]# cat test.txt

Welcome tooldboy training.

we areexcellent.

oldboy1

[[email protected]~]# grep -w "oldboy" test.txt

Welcome tooldboy training.

[[email protected]~]# grep  "oldboy" test.txt

Welcome tooldboy training.

oldboy1

[[email protected]~]# grep -w "oldboy" test.txt

Welcome tooldboy training.

-o 的应用

[[email protected]~]# grep "oldboy" test.txt

Welcome to oldboy training.

oldboy1

[[email protected]~]# grep -o "oldboy" test.txt

oldboy

oldboy

 

-E 的应用

[[email protected] 18:11:09  ~]# grep -E  "are|to"1.txt

Welcome tooldboy training.

we areexcellent.~                                                                                            

[[email protected] 18:13:49  ~]# egrep "are|to" 1.txt

Welcome tooldboy training.

we areexcellent.~ 

egrep

他可以实现grep所不具备的功能,例如和

[if !supportLists]第3章 [endif]重定向符号

[if !supportLists]3.1[endif]  >   标准输出重定向

箭头方向就是数据流向,会把左边的数据流向到右边,会清空右边之前的数据

[[email protected] 18:23:08  /data]# cat oldboy.txt

i love stud

i love sd

i love sd

[[email protected] 18:23:10  /data]# cat oldboy.txt

i love stud

i love sd

i love sd

[[email protected] 18:25:27  /data]# echo "zyl66666" >oldboy.txt

[[email protected] 18:25:41  /data]# cat oldboy.txt

zyl66666

[[email protected] 18:25:43  /data]#

清空前备份,清空文件

 

[if !supportLists]3.2 [endif]>>追加输出重定向

     内容追加到文件尾部

[[email protected] 18:22:45  /data]# cat oldboy.txt

i love stud

[[email protected] 18:22:48  /data]# echo "i love sd">>oldboy.txt

[[email protected] 18:23:02  /data]# echo "i love sd" >>oldboy.txt

[[email protected] 18:23:08  /data]# cat oldboy.txt

i love stud

i love sd

i love sd

[if !supportLists]3.3 [endif]< 标准输入重定向

箭头方向就是数据流向

[if !supportLists]3.4 [endif]<< 追加输入重定向,箭头方向就是数据流向

[if !supportLists]3.5[endif]  2>错误输出重定向箭头方向就是数据流向,吧左边的报错输入到右边(覆盖)

[if !supportLists]3.6[endif]  2>>错误追加输出重定向,箭头方向就是数据流向,把左边的报错输入到右边(追加)

固定定义

数字0 标准输入standardinput        <  相当于0<   0<<  

数字1 标准输出standardoutput      >  相当于1>   1>>

数字2 错误输出erroroutput           2>错误输出重定向 接收错误信息

[[email protected]~]# echo "I am studying linux." 1>/data/oldboy.txt

[[email protected]~]# cat /data/oldboy.txt

I am studying linux.

[[email protected]~]# echo "I am studying linux.." 1>>/data/oldboy.txt

[[email protected]~]# cat /data/oldboy.txt

I am studying linux.

I am studying linux..

[[email protected]~]# tr "am" "01" 0

I 01 studying linux.

I 01 studying linux..

 

 

[if !supportLists]3.7 [endif]如何保存替换字符后的文件

 

[if !supportLists]3.8[endif]   <<

EOF

##成对出现,后面这个顶格

用法:

Cat <

I anoldboy

EOF

Cat>oldboy.txt<

Iamoldboy

EOF

 

 

 

 

              考题:已知文件test.txt内容为:

test

liyao

oldboy

请给出再屏幕输出test.txt内容时,不包含oldboy字符串的命令

[[email protected]~]# grep -v "oldboy" test.txt

test

liyao

[[email protected]~]# head -2 test.txt

test

liyao

[[email protected]~]# grep -E "test|liyao" test.txt

test

liyao

[if !supportLists]第4章 [endif]Linux文件属性描述

[if !supportLists]4.1 [endif]文件属性

文件的大小,时间,类型,权限,属主

索引节点:文件的唯一标识

身份证:人的唯一标识

进程号:进程的唯一标识

[[email protected]~]# ls -lhi

total 24K

33631870 -rw-r--r--. 1 root root   4 Mar 13 11:29 a.txt

33631871 -rw-r--r--. 1 root root  30 Mar 13 11:28 b.txt

16777289 drwxr-xr-x. 2 root root  64 Mar  7 11:57 data1

33631866 -rw-r--r--. 1 root root 712 Mar 11 15:58 grep.txt

33631863 -rw-r--r--. 1 root root  12 Mar 13 11:23 oldboy.txt

16964029 drwxr-xr-x. 2 root root   6 Mar  7 10:56 test

33631865 -rw-r--r--. 1 root root  24 Mar 13 11:46 test.txt

33631864 -rw-r--r--. 1 root root  54 Mar 13 10:26 test.txt.ori

1          2        3   4    5    6  7   8   9    10

共10列第一列:inode索引节点编号(相当于人的身份证、家庭住址,全国唯一);系统读取文件时首先通过文件名找到inode号码,然后才能读取到文件内容。第二列:文件类型及权限。这一列共11个字符,其中第一个字符为文件类型,随后的9个字符为文件的对应权限,最后一个字符点号“.”是和selinux有关的一个标识;

第三列: 硬连接数第四列: 属主:文件的拥有者,用户第五列: 属组:文件属于的组,用户组第六列: 大小第七列: 月份第八列:  日第九列: 时间第十列: 文件名

[if !supportLists]4.2 [endif]第二列详解

(1)第二列第一个字符:文件类型

一切皆文件

[if !supportLists]-   [endif]普通文件

图片,视频,文档等等都是文件

Windows用扩展名区分文件,Linux里有自己的文件类型,Linux的扩展名兼容Windows,方便区分文件

 

创建文件:touch vim echo cat

拷贝:cp

删除:rm

移动:mv

Linux中的三种文件类型

[if !supportLists]1.  [endif]纯文本文件:字符数字等信息

[if !supportLists]2.  [endif]数据文件:存放命令收集的信息

[if !supportLists]3.  [endif]二进制文件:可执行的命令

 

(2)d 目录(directory

生成:mkdir -p  

复制:cp -a /-r

删除:rm -fr

区分:开头为d的就是目录,

      颜色为蓝色的是目录

Ls -p区分目录和文件

 

UID

你可能感兴趣的