第九天预习笔记
一、Vim/vi纯文本编辑器
1、vi是Linux命令行界面下的重要文件编辑器,vim是vi的加强版,列如高亮显示代码
自动缩进等
语法:vim选项文件
[root@oldboyedu ~]# vim aa.txt
2、vim分为三种模式
普通模式、编辑模式、命令模式
普通模式
用vim打开一个文件后,当前状态就是普通模式,在这个模式不能编辑,但可以按“i
o,O,a,A”其中“i”最普遍,也可以进行一些如删除、复制、粘贴
编辑模式
当在普通模式进入编辑模式按“i”后,再界面的下面会显示insert图标,这就是编辑模式
命令模式
在普通模式下,输入“:”或“/”“?”时,光标会自动定位在那一行,
在这个模式下可以执行保存、退出,搜索、替换等动作
3、针对该命令的参数选项说明
1)普通模式:移动光标
G或shift将光标移动到文件的最后一行
gg将光标移动到文件的第一行
数字0将光标从当前位置移动到当前行的行首
$从光标所在的位置将光标移动到当前行的行尾
ngg n为数字,移动到文件的第n行
2)普通模式:搜索与替换
/oldboy从光标位置开始,向下寻找名为oldboy的字符串
?oldboy从光标位置开始,向下寻找名为oldboy的字符串
n从光标位置开始,向下重复前一个搜索的动作
N从光标位置开始,向上重复前一个搜索的动作
:%s/A/B/g把符合A的全部替换成B,斜线为分隔符,可以用#@等替换
:n1,n2s/A/B/gc n1,n2是数字,在第n1行到第n2行间寻找A,并替换成B
2)普通模式:复制、粘贴、删除等
yy复制光标所在的行
nyy n为数字,复制光标开始向下共n行
p/P p将已复制的数据粘贴到光标的下一行,P则为粘贴到上一行
dd删除光标所在的行
ndd删除从光标开始向下共n行
u撤销前一个动作
.点号,重复前一个动作
3)进入编辑模式
i在当前光标所在处插入文件
o在当前所在行的下一行插入新的一行
4)命令模式
:wq保存退出
:q退出,不保存
:set nu显示行号
:set nonu取消显示行号
二、echo显示输出文本内容
将指定文本显示在Linux命令行上或者通过重定向符写入到指定文件中
语法:echo选项文本
选项:-n不要自动换行
-e转移字符\t tab键插入tab键;\n换行光标移动到行首
例子:
[root@oldboyedu ~]# echo "hello world"
hello world
[root@oldboyedu ~]# echo -e "hello\ world"
hello\ world
[root@oldboyedu ~]# echo -e "hello\t world"
hello world
[root@oldboyedu ~]# echo -e "hello\n world"
hello
world
三、cat合并文件或者查看文件内容
语法:cat选项文件
选项:-n从1开始对所有输出的内容按行编号
-b和-n相似,但忽略显示空白行号
例子
[root@oldboyedu ~]# cat -n a.txt
1
2 i am a teache
3 hello
4 world
[root@oldboyedu ~]# cat -b a.txt
1 i am a teache
2 hello
3 world
cat重定向输入创建文件
[root@oldboyedu ~]# cat > b.txt < I AM A TEACHER i am a study 58期 EOF [root@oldboyedu ~]# cat b.txt I AM A TEACHER i am a study 58期 四、more分页显示文件内容 语法:more选项文件 [root@oldboyedu ~]# more -5 /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync --More--(20%) 五、Less分页显示内容 语法:less选项文件 [root@oldboyedu ~]# less a.txt i am a teache hello world (END) 六、head显示文件内容头部,默认显示文件头部的10行 语法:head选项文件 选项:-n指定显示的行数;-c指定显示字节数 例子: [root@oldboyedu ~]# head /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin [root@oldboyedu ~]# head -n /etc/passwd head: /etc/passwd: invalid number of lines [root@oldboyedu ~]# head -4 /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologi 七、tail显示文件内容尾部,默认显示最后10行 语法:tail选项文件 选项:-n指定显示的行数;-c指定显示的字节数;-f实时输出文件变化后追加的数据 例子 [root@oldboyedu ~]# tail -f /var/log/messages Mar 13 18:40:37 oldboyedu nm-dispatcher: req:3 'up' [eth0]: new request (2 scripts) Mar 13 18:40:37 oldboyedu nm-dispatcher: req:4 'connectivity-change': new request (2 scripts) [root@oldboyedu ~]# tail -3 /etc/passwd oldboy:x:1000:1000:oldboy:/home/oldboy:/bin/bash oldgirl:x:1001:1001::/home/oldgirl:/bin/bash test:x:1002:1002::/home/test:/bin/bash 八、grep文本过滤工具 其功能是从文本文件或管道数据流中筛选匹配的行或数据 语法:grep选项参数匹配模式查找文件 选项参数:-v显示不匹配的行;-i不区分大小写;-n显示行号 -E相当于egrep扩展;-w只匹配过滤的单词;-o只输出匹配的内容 [root@oldboyedu ~]# cat b.txt I AM A TEACHER i am a study 58期 [root@oldboyedu ~]# grep "I" b.txt I AM A TEACHER [root@oldboyedu ~]# grep "i" b.txt i am a study [root@oldboyedu ~]# grep "i" b.txt a.txt b.txt:i am a study a.txt:i am a teache [root@oldboyedu ~]# grep "i" b.txt i am a study [root@oldboyedu ~]# grep "I" b.txt I AM A TEACHER [root@oldboyedu ~]# grep -i "a" b.txt I AM A TEACHER i am a study [root@oldboyedu ~]# grep -v "a" b.txt I AM A TEACHER 58期 [root@oldboyedu ~]# grep -n "a" b.txt 2:i am a study [root@oldboyedu ~]# grep -w "a" b.txt i am a study [root@oldboyedu ~]# grep -o "a" b.txt a a [root@oldboyedu ~]# grep -o "A" b.txt A A A [root@oldboyedu ~]# grep -o "Am" b.txt [root@oldboyedu ~]# grep -o -i "Am" b.txt AM am [root@oldboyedu ~]# grep -o "Am" b.txt [root@oldboyedu ~]# egrep -o "Am" b.txt [root@oldboyedu ~]# egrep -o "A|m" b.txt A A A M tr替换或删除 从标准输入中替换、缩减、或者删除字符,并将结果写到标准输出 语法:tr选项字符1字符2 选项:-d删除字符 例子 [root@oldboyedu ~]# cat a.txt i am a teache hello world [root@oldboyedu ~]# tr 'a' 'A ' < a.txt i Am A teAche hello world [root@oldboyedu ~]# tr 'a' 'A ' < a.txt >>a.txt [root@oldboyedu ~]# cat a.txt i am a teache hello world i Am A teAche hello world 7.10.4重定向符号的核心知识 1.标准输入、输出、错误输出 2标准输入是一个名词,它表示数据的一个流向方向,通常表示数据从文件等流入 到处理的工具或者命令中,用代码0表示,使用<或者<<符号来指示数据朝箭头所指的 方向流向 标准输出是一个名词,也表示一个数据的流向方向,使用>或>>来表示数据朝向方向 和标准输入不同,1表示将命令等处理的一般信息输出到文件 标准错误输出是另一个名词,也是表示数据的一个流向方向,通常用2表示,使用 >或>>符号啦指示数据朝向 3、标准输出实际范例 [root@oldboyedu ~]# echo ssss >c.txt [root@oldboyedu ~]# cat c.txt ssss 标准错误输出 [root@oldboyedu ~]# ch fsdfsdf >>c.txt -bash: ch: command not found [root@oldboyedu ~]# ch fsdfsdf 2>>c.txt [root@oldboyedu ~]# cat c.txt ssss -bash: ch: command not found 标准输入 [root@oldboyedu ~]# xargs -n 3 I AM A TEACHER i am a study 58期 [root@oldboyedu ~]# xargs -n 4 I AM A TEACHER i am a study 58期 [root@oldboyedu ~]# xargs -n 9 I AM A TEACHER i am a study 58期 考试题:已知文件test.txt内容如下 test liyao oldboy 请给出在屏幕输出test.txt内容时,不包括oldboy字符串的命令 第一种方法 [root@oldboyedu ~]# grep -v "oldboy" test.txt test liyao 第二种 [root@oldboyedu ~]# head -2 test.txt test liyao --------------------------------------------------------- 第七章、查看命令的使用及软硬连接 1、使用echo输出 [root@oldboyedu /data]# echo "i am studying centos i am studying linux 2、特殊符号重定向符号>的说明 >为重定向符号,表示清除原文件里面的所有内容,然后把内容写到文件的尾部 >>为追加重定向,即追加内容到文件的尾部(文件的最后一行) 3、cat 在多行追加文本内容时,也可以利用cat加追加重定向符号实现和echo相同的功能 4、重定向符号的核心知识 1)重定向简介:重定向是Linux的一个重要的名词,使用重定向符号,可以让数据从一个 地方(文件或工具)无损失地流到另一个地方(文件或工具) 2)标准输入、输出、错误输出 3)标准输出实际范例 [root@oldboyedu /data]# echo "12334" >oldboy.txt [root@oldboyedu /data]# cat oldboy.txt 12334 4)错误输出案例 [root@oldboyedu ~]# ech 232 1>>a.txt 2>b.txt [root@oldboyedu ~]# cat a aa.txt a.txt [root@oldboyedu ~]# cat a.txt [root@oldboyedu ~]# cat b.txt -bash: ech: command not found [root@oldboyedu ~]# 5)输入重定向的实例 [root@oldboyedu ~]# echo 1 2 3 >oldboy.txt [root@oldboyedu ~]# cat oldboy.txt 1 2 3 6、软连接及硬链接 ln -s test test/ 报错 ln -s test-1 test 这是软链接,正确的 软连接 特点 1、软连接相当文件的不同入口(快捷方式) 2、软连接依附于文件实体存在,不可独立存在(原文件删除,软连接失效) 3、软连接不可移动 ln test test1 硬链接特点:1、相当于原文件的备份或克隆,与原文件索引节点相同 2、硬链接可以独立存在,可以用硬链接找回原文件,改名 3、硬链接可移动 4、硬链接只能对文件做链接,不可对目录做链接 第十天预习笔记