Linux Shell命令行及脚本编程实例详解课件:第4章 Shell命令进阶_第1页
Linux Shell命令行及脚本编程实例详解课件:第4章 Shell命令进阶_第2页
Linux Shell命令行及脚本编程实例详解课件:第4章 Shell命令进阶_第3页
Linux Shell命令行及脚本编程实例详解课件:第4章 Shell命令进阶_第4页
Linux Shell命令行及脚本编程实例详解课件:第4章 Shell命令进阶_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

第4章Shell命令进阶4.1文件处理和归档4.1.1paster命令实例:合并文件paste命令用于合并文件的行。它可以合并一个文件或多个文件中的行。paste命令的语法如下所示:$paste[OPTION]…[FILE]…4.1.2dd命令实例:备份和拷贝文件dd命令可能不是一个容易使用的命令,但如果你真正开始使用它,你会发现它是一个功能很强大的命令。它可以做很多不同的事,比如:备份一个分区、DVD或是U盘的数据,转换数据文件,或是做一些简单的硬盘或CPU速度的测试。dd命令可以通过可能的转换格式拷贝指定的输入文件到指定的输出。同时,可以指定输入和输出的块大小,以处理原始物理数据的读写。块大小的默认单位是字节(bytes),也可以在数字后跟特定的单位来指定的块大小,比如,G(1024*1024*1024bytes)、GB(1000*1000*1000bytes)、M(1024*1024bytes)、MB(1000*1000bytes)、w(2bytes)、c(1bytes)。dd命令有如下两个基本参数:if=<inputfile>:指定输入文件的路径。默认为标准输入。of=<outputfile>:指定输出文件的路径。默认为标准输出。4.1.3gzip、bzip2命令实例:压缩和归档文件gzip命令用于压缩文件,以减少文件的大小,也可以用于解压缩文件。如果文件是在不同的系统间通过网络传输,这将节省网络的带宽。另外,文件所能减少的大小依赖于文件的内容,如果是文本文件,使用gzip命令压缩后大小将减少60%~70%。直接简单地使用gzip命令,不指定任何选项,将压缩指定的文件,生成一个默认以.gz结尾的文件,并删除原始文件。4.1.4gunzip、bunzip2命令实例:解压缩文件gunzip命令与gzip命令相对应,用于解压缩由gzip命令压缩的文件。其作用于gzip命令的-d选项相同。直接使用gunzip命令解压缩一个文件:$gunzipimage1.jpg.gz使用-c选项,将解压后的内容重定向一个文件,以保留原始压缩文件:$gunzip-cimage1.jpg.gz>image1.jpgbunzip2命令与bzip2命令相对应,用于解压缩由bzip2命令压缩的文件。其作用于bzip2命令的-d选项相同。直接使用bunzip2命令解压缩一个文件:$bunzip2image1.jpg.bz2使用-k选项,bunzip2命令可以解压缩文件并保留原始文件:$bunzip2-kimage1.jpg.bz24.1.5tar命令实例:打包和解包文件tar命令是Linux系统中主要的归档工具。使用tar命令归档后生成的文件被我们称作为tar包。理解tar命令各选项的用法将帮助你熟练掌握归档文件的操作。tar命令的语法如下所示:$tar[OPTION]…[FILE]…-c:创建一个新的归档-v:冗长地列出被处理的文件-f:指定归档文件的名称4.2监测和管理磁盘4.2.1mount、umount命令实例:挂载和卸载存储介质在Linux系统中,不同分区上的文件系统,或可移动设备(CD、DVD、U盘等),或NFS(网络文件系统)共享目录可以被挂载到目录树中的某一节点,之后还可以再被卸载。挂载和卸载一个文件系统,分别使用mount和umount命令。mount命令用于挂载一个文件系统,或是显示已挂载的文件系统的信息。4.2.2df命令实例:报告文件系统磁盘空间利用率df命令用于显示文件系统的可用的磁盘空间的数量。如果没指定具体的挂载点,df命令将显示所有当前挂载的文件系统的可用空间的信息。默认情况下,显示的空间将1K块大小为单位。其命令的语法如下所示:$df[OPTION]…[FILES]…4.2.3du命令实例:评估文件空间利用率du命令用于概述每个文件和目录所占磁盘空间的大小。du命令有用于得到多种格式结果的多个参数选项,du命令还可以递归地显示文件和目录的大小。du命令的语法如下所示:$du[OPTION]…[FILE]…4.3后台执行命令4.3.1cron、crontab命令实例:执行计划任务cron是执行定时计划任务的守护进程。当系统是多用户运行级别时,cron进程会从/etc/init.d中自动启动。cron进程会在目录/var/spool/cron/crontabs/下搜索定时计划任务文件(定时计划任务文件以创建此任务的账户名命名),并将找到的这些定时计划任务载入内存。cron进程还会读取/etc/crontab以及目录/etc/cron.d下的内容。cron进程会每分钟唤醒一次,审查所有存储的定时计划任务,检查每个命令看它是否应该在当前时间运行。另外,cron每分钟会检查一次它的池目录/var/spool/cront/crontabs的修改时间(modtime)是否已经改变。如果修改时间已经改变,cron会检查所有定时计划任务文件的修改时间,并重新加载那些已经被修改的定时计划任务文件。因此,当定时计划任务文件被修改后,不需要重启cron守护进程。4.3.1cron、crontab命令实例:执行计划任务crontab命令用于创建、修改、删除和查看定时计划任务。每个用户可以使用crontab命令创建自己的定时计划任务,生成的定时计划任务文件将以用户的账户名命名。定时计划任务文件由每行命令组成,每行有6个字段,由空格或制表符分隔。前五个字段表示运行任务的时间,最后一个字段是任务的命令。前五个字段的含义依次如下所示:分钟:其值为0-59。小时:其值为0-23。日期:其值为1-31。月份:其值为1-12或是Jan-Dec(月份英文名称的前三个字母)。星期:其值为0-6或是Sun-Sat(星期英文名称的前三个字母),0表示星期日。在这前五个字段中,还可以使用以下描述的特殊字符:星号(*)-匹配所有可能的值。比如“06***”表示每天六点。连字符(-)-定义一个范围。比如“02**1-5”表示每周一到周五的凌晨两点。斜杠(/)-表示每间隔多少时间。比如“*/5****”表示每五分钟。逗号(,)-表示‘或’的含义。比如“00,6,12,18***”表示每天的0点,6点,12点和18点。4.3.2at命令实例:在指定时间执行命令at命令用于安排一个任务在指定的时间运行。at命令可以从标准输入读入命令,也可以从指定的文件中读入,然后在指定的时间运行这些命令。at命令的语法如下所示:$at[-ffile][-qqueue][OPTION]TIME[DATE]4.3.3&控制操作符实例:将任务放在后台运行字符‘&’是Bash内置的用于并行处理进程的一个控制操作符。在命令行的末尾添加‘&’将会在后台运行该命令,它将在当前的Shell进程下启动一个子Shell进程(我们将在13.2节中详细讲述进程的概念,请参考)。所以当命令在后台运行时,你可以继续在此终端输入并运行其它命令。控制操作符&的使用方法类似如下所示:$command&或$script-name&当使用控制操作符&将一个命令或脚本放到后台执行后,会显示这个后台任务的编号及其对应的子进程号。4.3.4nohup命令实例:运行一个对挂起免疫的命令有时一个任务或命令会运行很长时间,如果你不确定这个任务什么时候才能运行结束,这时就最好把它放到后台去运行。然而一旦你登出系统,这个任务将被终止,你该怎么办?想必你已经知道了答案,使用nohup命令就可以解决这个问题,它能让你运行的命令或脚本在你登出系统后继续在后台运行。其命令的语法格式如下所示:$nohupCOMMAND[ARG]…&COMMAND:Shell脚本或命令的名称。[ARG]:脚本或命令的参数。&:nohup命令不能自动地将任务放在后台运行,你必须明确地在nohup命令的末尾添加操作控制符&。4.4小结下面我们总结一下本章所学的主要知识:paste命令用于合并一个文件或多个文件中的行。dd命令可用于备份一个分区、DVD或是U盘的数据,转换数据文件,或是做一些简单的硬盘或CPU速度的测试。它可以通过可能的转换格式拷贝指定的输入文件到指定的输出。gzip命令用于压缩文件,以减少文件的大小,可以节省文件通过网络传输时所占的带宽。它可以指定从1到9的9个压缩级别,级别1是最快的压缩速度,但压缩率较低,而级别9是最慢的压缩速度,但压缩率最好。默认的压缩级别是6。bzip2命令也同样用于压缩或解压缩文件。与gzip相比,bzip2命令具有更好的压缩率,但bzip2的压缩速度比gzip稍慢。bzip2以可接受的速度提供较高的压缩率。bzip2同样有9个压缩级别,其含义与gzip的含义类似。但它的默认压缩级别是9。4.4小结gunzip和bunzip2命令分别用于解压缩由gzip和bzip2生成的压缩包。tar命令是Linux系统中主要的归档工具。使用tar命令归档后生成的文件被我们称作为tar包。mount命令用于挂载一个文件系统。挂载和卸载一个文件系统,通常都需要root账户权限。使用mount命令挂载一个文件系统时,需要目标目录(即挂载点)已存在。umount命令用于卸载一个文件系统或设备。在卸载指定的文件系统或设备前,要确保其没有被任何进程占用,否则会卸载失败。df命令用于显示文件系统的可用的磁盘空间的数量。du命令用于概述每个文件和目录所占磁盘空间的大小。4.4小结cron是执行定时计划任务的守护进程。cron进程会周期性地在目录/var/spool/cron/crontabs/下搜索由crontab命令生成的(也可能由用户使用文本编辑器生成,但建议使用crontab命令)定时计划任务文件(定时计划任务文件以创

温馨提示

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

评论

0/150

提交评论