T3-Linux文件操作指令与过滤器.ppt_第1页
T3-Linux文件操作指令与过滤器.ppt_第2页
T3-Linux文件操作指令与过滤器.ppt_第3页
T3-Linux文件操作指令与过滤器.ppt_第4页
T3-Linux文件操作指令与过滤器.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三课 Linux文件操作指令与过滤器,学习目标,Cat命令,显示文件连接文件内容的工具 cat 是一个文本文件查看连接工具 比如: rootlocalhost # cat /etc/fstab,Cat命令,cat 选项 文件. 常用选项 -b 对非空输出行编号 -E 在每行结束处显示 $ -n 对输出的所有行编号 -s 不输出多行空行,Cat命令实例,查看/etc/目录下的profile文件内容; rootlocalhost # cat /etc/profile /etc/目录下的profile内容,并对非空白行编号,行号从1开始 rootlocalhost # cat -b /etc/fs

2、tab /etc目录中的profile的所有的行(包括空白行)进行编号输出显示; rootlocalhost # cat -n /etc/profile 查看/etc/下的profile内容,并且在每行的结尾处附加$符号; rootlocalhost # cat -E /etc/profile,Cat 命令实例,cat 加参数-n 和nl工具差不多,文件内容输出的同时,都会在每行前面加上行号; rootlocalhost # cat -n /etc/profilerootlocalhost # nl /etc/profile cat 可以同时显示多个文件的内容,比如我们可以在一个cat命令上同

3、时显示两个文件的内容; rootlocalhost # cat /etc/fstab /etc/profile cat 对于内容极大的文件来说,可以通过管道|传送到more 工具,然后一页一页的查看; rootlocalhost # cat /etc/fstab/etc/profile | more,Cat的创建、连接文件实例,cat 有创建文件的功能,创建文件后,要以EOF或STOP结束; 1、创建.txt文件 rootlocalhost # cat .txt BeiJing 2008 EOF rootlocalhost # cat linux

4、.txt BeiJing 2008,Cat的创建、连接文件实例,cat 还有向已存在的文件追加内容的功能。 rootlocalhost # cat .txt BeiJing 2008 rootlocalhost # cat .txt OK? OK EOF rootlocalhost # cat .txt BeiJing 2008 OK? OK,Cat的创建、连接文件实例,cat 连接多个文件的内容并且输出到一个新文件中; 有sir01.txt、sir02.tx和sir03.txt rootlocalhost

5、# cat sir01.txt 123456 I am testing rootlocalhost # cat sir02.txt 56789 BeiNan Tested rootlocalhost # cat sir03.txt 09876 testing,Cat的创建、连接文件实例,rootlocalhost # cat sir01.txt sir02.txt sir03.txt sir04.txt rootlocalhost # cat sir04.txt |more,Cat的创建、连接文件实例,cat 把一个或多个已存在的文件内容,追加到一个已存在的文件中 r

6、ootlocalhost # cat .txt rootlocalhost # cat .txt sir04.txt rootlocalhost # cat sir04.txt,Cat的创建、连接文件实例,意思是创建; 是追加; 是结束,如何创建一个新文件,用touch、echo及cat 工具。 rootlocalhost # ls 123456.txt 654321.txt 98765.txt rootlocalhost # echo 123456.txt rootlocalhost # touch 654321.txt rootlocalho

7、st # cat 98765.txt 按ctrl+c组合键退出,More 命令,文件内容或输出查看工具 more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比; rootlocalhost # more /etc/profile,More 命令,more 参数选项 文件 常用参数如下: +num从第num行开始显示; -num定义屏幕大小,为num行; +/pattern 从pattern 前两行开始显示; -c 从顶部清屏然后显示; -d 提示Press space to continue, q to quit.(按空格键继续,

8、按q键退出),禁用响铃功能; -l 忽略Ctrl+l (换页)字符; -p 通过清除窗口而不是滚屏来对文件进行换页。和-c参数有点相似; -s把连续的多个空行显示为一行; -u把文件内容中的下划线去掉 退出more的动作指令是q,More 命令,more 的参数应用例子; rootlocalhost # more -dc /etc/profile 注:显示提示,并从终端或控制台顶部显示; rootlocalhost # more +4 /etc/profile 注:从profile的第4行开始显示; rootlocalhost # more -4 /etc/profile 注:每屏显示4行;

9、rootlocalhost # more +/MAIL /etc/profile 注:从profile中的第一个MAIL单词的前两行开始显示,More 命令,more 的动作指令; 查看一个内容较大的文件时,要用到more的动作指令,ctrl+f(或空格键) 是向下显示一屏,ctrl+b是返回上一屏; Enter键可以向下滚动显示n行,需要定义,默认为1行; 几个常用的如下: Enter 向下n行,需要定义,默认为1行; Ctrl+f 向下滚动一屏; 空格键 向下滚动一屏; Ctrl+b返回上一屏; = 输出当前行的行号; :f 输出文件名和当前行的行号; v调用vi编辑器; ! 命令 调用S

10、hell,并执行命令; q 退出more,More 命令,其它命令通过管道和more结合的运用例子 我们列一个目录下的文件,由于内容太多,可以用more来分页显示。这要和管道 | 结合起来 比如: rootlocalhost # ls -l /etc |more,Less 查看文件内容工具,less 工具也是对文件或其它输出进行分页显示的工具; 是linux正统查看文件内容的工具,功能极其强大,Less 查看文件内容工具,less 参数 文件 常用参数 -c 从顶部(从上到下)刷新屏幕,并显示文件内容。而不是通过底部滚动完成刷新; -f 强制打开文件,二进制文件显示时,不提示警告; -i 搜索

11、时忽略大小写;除非搜索串中包含大写字母; -I 搜索时忽略大小写,除非搜索串中包含小写字母; -m 显示读取文件的百分比; -M 显法读取文件的百分比、行号及总行数; -N 在每行前输出行号; -p pattern 搜索pattern;比如在/etc/profile搜索单词MAIL,就用 less -p MAIL /etc/profile -s 把连续多个空白行作为一个空白行显示; -Q 在终端下不响铃; 比如:我们在显示/etc/profile的内容时,让其显示行号; rootlocalhost # less -N /etc/profile,Less 查看文件内容工具,less的动作命令;

12、动作 回车键 向下移动一行; y 向上移动一行; 空格键 向下滚动一屏; b 向上滚动一屏; d 向下滚动半屏; h less的帮助; u 向上滚动半屏; w 可以指定显示哪行开始显示,是从指定数字的下一行显示;比如指定的是6,那就从第7行显示; g 跳到第一行; G 跳到最后一行; p n% 跳到n%,比如 10%,也就是说比整个文件内容的10%处开始显示; /pattern 搜索pattern ,比如 /MAIL表示在文件中搜索MAIL单词; v 调用vi编辑器; q 退出less,Head 命令,显示文件内容的前几行 head -n 行数值 文件名; 显示/etc/profile的前10

13、行内容,应该是: rootlocalhost # head -n 10 /etc/profile,tail 命令,显示文件内容的最后几行 tail 是显示一个文件内容的最后多少行; tail -n 行数值文件名; 显示/etc/profile的最后5行内容,应该是: rootlocalhost # tail -n 5 /etc/profile,标准文件,标准输入文件 键盘称为 标准输入文件 Linux中,所有的打开文件,包括标准文件,都被赋以一个称为文件描述符的数。文件描述符0被赋给标准输入文件。 标准输出文件 监视器称为标准输出文件 文件描述符1被赋给标准输出文件,文件描述符,文件描述符是一

14、个整数,它代表一个打开的文件,标准的三个描述符号: stdin (标准输入:一般指键盘,) stdout (标准输出一般指屏幕输出) stderr (错误输出,也是屏幕) 它们分别和3个整数0,1,2 一一对应 ,&, 重定向输出 添加输出2 错误重定向,Cat 重定向的例子, cat config 将会把文件config的内容依次显示到屏幕上。但是,如果cat的命令行中没有参数,它就会从标准输入中读取数据,并将其送到标准输出。例如:$ catHello worldHello worldByeBye用户输入的每一行都立刻被cat命令输出到屏幕上,输入重定向,输入重定向是指把命令(或可执行程序)

15、的标准输入重定向到指定的文件中。例: $ wc /etc/passwd20 23 726 /etc/passwd 另一种把/etc/passwd文件内容传给wc命令的方法是重定向wc的输入。 输入重定向的一般形式为:命令文件名。可以用下面的命令把wc命令的输入重定向为/etc/passwd文件: $ wc /etc/passwd20 23 726,输出重定向,输出重定向是指把命令(或可执行程序)的标准输出或标准错误输出重新定向到指定文件中。这样,该命令的输出就不显示在屏幕上,而是写入到指定文件中。 输出重定向的一般形式为:命令文件名。例如:$ ls directory.out$ cat dir

16、ectory.out 如果要将一条命令的输出结果追加到指定文件的后面,可以使用追加重定向操作符。形式为:命令文件名。例如:$ ls *.doc directory.out 错误输出设备重定向:$ ls /usr/tmp 2 err.file 将标准输出和错误输出同时送到同一文件中。$ ls /usr/tmp & output.file,管道,将一个程序或命令的输出作为另一个程序或命令的输入,使用Linux所提供的管道功能。$ ls /usr/bin | wc -w,命令替换,命令替换和重定向有些相似,但区别在于命令替换是将一个命令的输出作为另外一个命令的参数。常用命令格式为:command1

17、$(command2)$ cd $(pwd)该命令将pwd命令列出的目录作为cd命令的参数,结果仍然是停留在当前目录下,过滤器,过滤器是一种程序,它接受来自标准输入文件的输入,处理(或过滤)它,再发送它的输出到标准输出文件,Grep过滤器,grep 过滤器寻找特定字符模式的文件,并显示含有此模式的所有行。被寻找的模式称为正则表达式: grep regular_expression 文件名,Grep过滤器,常用参数 -c:只输出匹配行的计数。 -i:不区分大小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询匹配字符的文件名。 -L: 查询不匹配字符的文件名 -n:显示匹配行及

18、行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行,Grep过滤器的例子,Grep 经常通过管道命令和其它命令配合使用,如: rootlocalhost # ls -lh | grep 04-27 | more -rw-r-r- 1 root root 7.9M 04-27 20:35 myfile.img-rw-r-r- 1 root root 4.0M 04-27 20:37 myfileSpaa-rw-r-r- 1 root root 3.9M 04-27 20:37 myfileSpab-rw-r-r- 1 root root 7.9M 04-27 2

19、0:38 newmyfile.img-rw-r-r- 1 root root 100 04-27 16:14 xaa,正则表达示,1)正则表达式是一个小型的编程语言 (2)最初它是在UNIX环境中开发的,与Perl一起使用得比较多。Linux中也有同样的功能。 (3)正则表达式语言是一种专门用于字符串处理的语言,比如我们在网页上用于验证邮件和电话号码的处理,正则表达示,正则表达示例子,rootlocalhost root# ls -lh | grep d drwxr-xr-x 2 root root 4.0K Dec 25 10:42 aaa -rw-r-r- 1 root root 1.2K

20、 Oct 25 10:05 anaconda-ks.cfg rootlocalhost root# ls -lh | grep d drwxr-xr-x 2 root root 4.0K Dec 25 10:42 aaa 增加代表开头的意思 rootlocalhost root# ls -lh|grep .x drwxr-xr-x 2 root root 4.0K Dec 25 10:42 aaa .代表单个字符的匹配 rootlocalhost root# ls -lh |grep g$ -rw-r-r- 1 root root 1.2K Oct 25 10:05 anaconda-ks.c

21、fg -rw-r-r- 1 root root 2.9K Nov 19 17:06 install.log -rw-r-r- 1 root root 2.9K Oct 25 10:03 install.log.syslog $代表以什么字符结尾,Grep命令例子,已在Diaz 电信注册的不同客户的材料存储在Customers 文件中。该文件的示例数据如下: 000001,Angela,Smith,16223 Radiance Court,Kansas City,Kansas 000002,Barbara,Johnson,227 Beach Ave.,Alexandria,Virginia 00

22、0003,Betty,Williams,1 Tread Road,Dublin,Georgia,Grep命令例子,写一个寻找住在Kansas 州的人的个数的命令? 写一个命令,显示客户Linda的完整的材料及出现该材料的行号,wc 过滤器,功能说明:wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。 语法:wc-clw-help-version文件. 常用参数:-c 统计字节数。-l 统计行数。-w 统计字数。 输出列的顺序和数目不受选项的顺序和数目的影响。总是按下述顺序显示并且每项最多一列。 行数、字数、字节数、文件名 省略任选项-lcw,wc命令的执行结果与上面一样,cut 过滤器,用法:cut -c num1-num2 filename 说明:显示每行从开头算起 num1 到 num2 的文字。 范例: rootlocalhost root# cat example test2 this is test1rootlocalhost ro

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论