Linux常用命令培训xg.ppt

上传人:本田雅阁 文档编号:3482313 上传时间:2019-09-01 格式:PPT 页数:65 大小:1.68MB
返回 下载 相关 举报
Linux常用命令培训xg.ppt_第1页
第1页 / 共65页
Linux常用命令培训xg.ppt_第2页
第2页 / 共65页
Linux常用命令培训xg.ppt_第3页
第3页 / 共65页
Linux常用命令培训xg.ppt_第4页
第4页 / 共65页
Linux常用命令培训xg.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《Linux常用命令培训xg.ppt》由会员分享,可在线阅读,更多相关《Linux常用命令培训xg.ppt(65页珍藏版)》请在三一文库上搜索。

1、LINUX常用命令,2009.9.2 翁文武(修改),1,帐户管理,UNIX是多用户系统,它应能完成: 。多个用户能共享系统资源 。多个用户间要有良好的安全保密措施 帐户作用:保存系统辨认用户身份的信息,记录并组织用户 在系统中的活动。相关的文件: 文件/etc/passwd 存储帐户管理信息,被授权的用户占有一项记录信息,其信息格式如下 username : x : uid : gid : comment : homedir : loginshell (1) (2) (3) (4) (5) (6) (7) 例如zhang:*:103:100:zhang hongguang:/home/zha

2、ng:/bin/csh (1):用户名 (2):口令,加密显示 (3):用户标识 (4):用户组标识 (5):用户注册描述 (6):用户主目录 (7):进入系统后第一步完成的工作(用户所使用的shell),2,系统中设置两类用户帐户:,。超级用户帐户-拥有系统最高权限,分配给系统管理员 有特定的用户名“root”,及相应的口令; 。普通用户帐户-由系统管理员分配的用户权限,给各种 用户,用于管理自己的文件和目录,3,4)用户口令管理,文件/etc/shadow 存储帐户中用户加密后的口令及管理信息 格式: username:password:lastchg:min:max:warn:inact

3、ive:expire (1) (2) (3) (4) (5) (6) (7) (8) (1):用户名 (2):加密后的口令 (3):口令最后修改日期 (4):可修改口令的最少天数 (5):可修改口令的最多天数 (6):口令到期提前提示天数 (7):允许不登录天数 (8):口令到期确定日期,4,5)用户组信息,文件/etc/group存储与用户帐户相关的组信息 格式: grouname : password : gid : user-list (1) (2) (3) (4) (1):用户组名称 (2):用户组口令 (3):用户组标识 (4):组中的用户列表,5,2.2 UNIX的shell及实用

4、程序,1)shell 是UNIX系统与用户交互的接口,包含有内部命令。 Bourn Shell 命令提示符 $ korn Shell 命令提示符 $ C shell 命令提示符 % 2) 实用程序 包含扩展命令及增强功能处理,由shell调度管理、加载及退出。,6,2.5 UNIX命令的使用,用图形用户界面执行命令 GUI 提供更灵活的操作方式, linux 中提供: KDE(K Desktop Environment) GNOME/Enlightenment(缺省),1)命令使用界面 用命令方式执行应用程序 若程序存放在shell 查询路径中则直接在命令行中输入程序名: % vi 若程序路径

5、没在shell查询中,则输入全路径名: % /usr/bin/vi,7,3)命令输入方式,UNIX命令可分为两类: 。Shell内部命令-包括简单常用命令,随shell 装入内存 。Shell 外部命令-不常驻内存,用时调入。,UNIX命令格式:command -options arguments,例:%ls %ls -l *.c,多命令行:%pwd ; ls -l 多行命令:%cc hello_world.c -lxm -lxt -lx11 -lm -o hello_world,8,4) 常用基础命令,。cat: 在标准输出上显示或连接文件 格式:cat filename (类似dos中的t

6、ype , copy) 例:%cat abc.c %cat abc.c aa.c more: 和cat同样的作用,区别在于more是每次显示一屏数据; 例如:more pkg.conf 在查看过程中如果想退出使用q,如果要编辑文件使用v; less: 与more的作用类似,区别在于less可以按 y 来往上卷一行,且可以进行查找操作;,。,cd: 改变工作目录 格式:cd 或 cd dirfilename (类似dos 的cd) 例:%cd (改变当前目录到用户注册目录) % cd /abc (改变当前目录到/abc),4) 常用基础命令,10,chmod:改变文件或目录的许可机制,格式:ch

7、mod who-op permission file 其中:who-指定用户,可取640,u,g,o等值 op-指定的操作码,可取+, -, =等值 permission-指定的许可机制,可取r ,w , x等,例:%chmod go-w filea %chmod +x filea %chmod 640 filea,11,常用基础命令(续),。cp :文件拷贝 格式:cp 源文件 目标文件/目录 常用参数有如下2个: -i : 此参数是当已有档名为 f2 的档案时,若迳自使用 cp 将会将原来 f2 的内容掩盖过去,因此在要盖过之前必须先询问使用者一下。如使用者的回答是y(yes)才执行复制的

8、动作。 -r : 此参数是用来做递回复制用,可将一整颗子树都复制到另一个 目录中。,ls :列出目录中的内容 格式:ls options names man :对命令获取连机帮助 例:%man ls %man man pwd:显示当前工作目录名 类似于dos中的cd命令 rm/rmdir :删除文件或目录,常用基础命令(续),13,who 显示用户信息,例: $ who zhang tty02 NOV 12 9:20 wang tty12 NOV 20 10:00 特例: who am I 显示本终端用户信息 命令选项: -q 仅显示用户名和用户总数 -H 显示输出中各列信息的标题 - b 显

9、示系统启动日期和时间 -s 只显示用户名、终端号及登录时间 -r 检查系统当前运行级别(超级用户) 说明:目前linux系统默认运行级别为5级,具体如下;,who 显示用户信息,linux的七个运行级别:0,1,2,3,4,5,6 0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动 1:单用户工作状态,root权限,用于系统维护,禁止远程登陆 2:多用户状态(没有NFS,即不允许linux主机间文件共享) 3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式 4:系统未使用,保留 5:X11控制台,登陆后进入图形GUI模式 6:系统正常关闭并重启,默认运行级别不能设为6,否

10、则不能正常启动,15,Shell环境文件,B Shell的外壳环境程序是.bashrc(linux),别的机器可能不是此文件. C Shell的外壳环境文件是:.chsrc K Sehll的外壳环境文件是:.profile 外壳环境文件修改后,立即生效的方法:source .cshrc,16,切换用户,su:默认切换到操作用户下. su liuguibing切换到用户liuguibing下,且不执行liuguibing的shell外壳程序 su liuguibing 切换到用户liuguibing下且执行liuguibing用户的shell外壳程序.,17,5 )用于目录和文件操作的命令,。c

11、hgrp :改变文件或目录所属的组 格式:chgrp option groupname filename 例:%chgrp seis abc.c %chgrp -R seis mydir,。chown:改变文件的属主 格式:chown option username filename 例:%chown chr abc.c %chown -R chr mydir,18,ln:建立文件的链接,。ln:建立文件的链接 格式:ln option file target 选项:-f -若目标文件已存在,用原文件的链接替代 否则就创建它 -s -创建文件的符号链接,符号链接也称软连接是一个指向其它文件或目

12、录的指针,也是一种文件,在目录树中具有名字和位置。 例:% ln abc.c xyz.c % ln abc.c otherdir % ln -s /home/ying/lib,19,使用符号连接命令应注意的问题,符号链接使得UNIX文件系统变得更加复杂,原有系统的目录树层次结构会被打乱。因此在文件系统中移动时要注意,例:用户ying 有一符号链接名为:link.dir,它指向的真正目录是:/home/ying/dir1. 做如下操作: %cd link.dir %pwd 显示出:/home/ying/link.dir 带来了错觉,下面两命令等效 % cd /home/ying/dir1 % c

13、d /home/ying/link.dir 若不注意这一点,随意删除其中某目录中的内容会给另一个目录带来灾难。可用/bin/pwd程序查看真实的路径名。 .,硬连接,硬连接: 几个文都件指向同一个inode. 任何一个被删除都不会影响另外的文件。 注意: 不允许将硬链接连至目录 . 如果没有-f选项,被链接的目标如果存在,则会报错 跨文件系统不允许有硬链接 例如: linux: # ln /dev/shm/1 /1 ln: creating hard link /root/1 to /dev/shm/1: Invalid cross-device link,21,重定向与管道,重定向就是将标准

14、输入和标准输出,标准错误输出到其他的输入或输出设备上常用的是文件 例如:ls 1.dat,将文件列表的内容保存在1.dat文件中 wc2.result:从1.dat中读取数据给wc统计使用,统计结果放在2.result文件中 adfasdfsd 2result:将adfasdfsd出错信息保存在result文件中 管道就是将上一个命令的标准输出通过管理输出到下一个命令中,例如:ls|grep users:将文件列表输出行中包含users的行显示出来,22,cut,。cut:按列或按域截取输入行中所指内容 格式: cut cf list -d char file 选项:-c 按字符截取 -f 按

15、域截取 -d 指定定界符 (缺省为tab) 例:%cut -c1-72 file %cut -f 1,3-5 file %cut -d : -f 1 /etc/passwd,.管道操作符| echo “abcd” |cut c 1,3,23,find,find :搜索文件并执行指定的操作 格式:find dir options 选项:- name filename 查找名为filename的文件 -type x 查找类型为x的文件,x=d 目录 x=f普通文件 -user username 查找属主为username的文件 -size n 查找记录块为n的文件 -atime n 查找n天前被访

16、问过的文件 -mtime n 查找n天前被修改过的文件 -exec cmd 对符合条件的文件执行cmd命令, 表示所找到的文件,命令要用“;”结束 :此选项在linux不好用 -a 选择同时满足多个条件的文件(逻辑与) -o 选择满足若干条件之一的文件(逻辑或),24,find,(expr) 括号中的表达式作为整体判断 -print 显示找到文件的路径名,例:% find /home (-name core -o -name a.out ) -atime +3 % find / -name “y2k*” print 对于C+的程序测试很可能会出下core问题,可以在用户的配置文件中用find来

17、监视,命令如下: find . name core* exec ls l ;,25,grep :按给定的模式搜索文件,格式:grep options pattern file 选项:-v 显示所有不匹配该模式的行 -c 仅显示匹配该模式的行 - l 仅显示包含指定模式的文件名 -y 模式不区分大小写,26,tar: 将文件存档或读存档文件,t 列出tarfile 上文件信息,格式与ls相同 o 与x项连用,以用户uid,gid 为文件的uid,gid (没有o选项,也以用户uid,gid为文件的uid,gid) v 详细报告tar 处理的文件信息,无此项则不报告,。tar: 将文件存档或读存档

18、文件 格式:tar options tarfile filename ( tarfile缺省指磁带机) 选项:c 创建tarfile并写入 x 从tarfile 上读取文件 b 指定磁带文件记录块大小(缺省为20) f 指定其后参数为tarfile文件名(缺省为磁带机),qmdadminlinux: tar tvf liu.tar drwxrwxrwx liuguibing/root 0 2007-12-03 14:40:31 liu/ -rwxr-xr-x qmdadmin/users 25 2007-11-26 16:27:54 liu/1 qmdadminlinux: tar xvf l

19、iu.tar liu/ liu/1,27,date: 显示或设置日期,时间,格式:date + format / date current date 选项:参数以+开头,命令按用户要求的格式输出,格式为: %m 月份以01-12表示 % d 日以01-31表示 %y 年以00-99表示 %D 以mm/dd/yy表示日期 %H 小时以00-23表示 %w 星期以0-6表示 %a 星期以san-sat 表示 %h 月份Jan -Dec表示 例:% date +%a 显示:Fri # date 10080945 设置系统时间,28,。df:报告磁盘空间使用情况,格式:df options resou

20、rce 选项:- i (BSD用)报告已用和尚未用的 I节点数 -k 以k字节为单位显示磁盘使用信息 -F type (systv)报告指定类型的文件系统使用情况,其中type 可以是nfs , ufs 等值(BSD的是-t type) 例:LINUX df 可显示如下: Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 155223288 3893128 151330160 3% / tmpfs 512932 0 512932 0% /dev/shm,29,获得当前目录下各文件与目录占用空间,du 不需要统计子目录中的

21、情况: du s * 只统计指定的目录中的空间使用情况: du test 其中test就是指定的目录.,30,。file :判断文件类型,格式:file filename 此命令可推测出文件类型,显示方式为: test.c: c program text net : symbolic link to /net/sun4/net (符号连接) brie:executuble shell script (shell 脚本文件) lib:directory (目录)等等,31,。id : 显示用户标识符,格式:id -a user 选项:-a 报告用户名、用户id及用户所属的所有组名 例:% id

22、-a Uid=103 (chr) gid=202 (seis),32,ps :显示当前进程状态,格式:ps options namelist 选项:-e 显示当前运行的每一个进程的信息 -f 产生一个父子关联进程完整的清单 -l 产生一个长清单 例:% ps linux: # ps PID TTY TIME CMD 386 pts/5 00:00:00 su 387 pts/5 00:00:00 bash 407 pts/5 00:00:00 ps,33,进程的停止kill,语法: kill -信号 进程号 kill -9 进程号. 其中参数-9的含义是只有有权限,就停掉此进程.,34,系统环

23、境变量,系统环境变量一定是系统内部定义好的一些变量,可以直接用$变量名加以引用. 常用环境变量:$:当前登录进程的进程号. $SHELL:当前登录用户的SHELL程序. $PATH:当前用户执行一个命令时的搜索PATH路径 设置一个环境变量:C SHELL:set var1=abc , B SHELL:var1=abc, 引用环境变量:echo $var1 别的SHELL可能不是这样设置的,请参考进一步的UNIX SHELL编程方面的参考书.,35,awk简介,awk是一个UNIX上的应用程序,可以用来产生各种统计报表. cat 1.txt|awk F| print $2 1.txt文件是一个

24、报表文件,其中每行一条记录,各个字段用|分隔, 此命令打印1.txt中所有记录的第二个字段.,36,ftp :远程文件传递,格式 ftp hostname ftp的命令参数是指定的主机名,可以是逻辑主机名,也可以是IP地址,下列的输入都是正确的: % ftp % ftp 127.0.0.1 ftp中的命令: !command 执行Shell命令Command ? 列出ftp的命令列表 ascii 置传输文件方式为ascii方式 cddirname 改变远程主机上的当前目录 close 关闭与某主机的联接 dir 显示远程主机的目录文件内容 get/mget 从远程取一个/多个文件 helpc

25、ommand ftp的联机帮助信息 open hostname 与指定远程ftp服务器建立联系 put/mput 向远程主机上送一个/多个文件 ( 可用通配符) pwd 显示远程主机的当前目录 type 显示当前传递方式,37,。telnet : 使用telnet协议的远程登录,格式:telnet hostname 例:%telnet 172.17.196.47 登录远程机,清华大学图书馆,和性能相关的命令,top:Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 内容说明:前五行是系统整体的统计信息。第一行是任务队列信息,同 upt

26、ime 命令的执行结果。 第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行 ; 最后两行为内存信息 ; 从第六行开始是进程信息区 ,通常包括以下信息: PID USER PR NI VIPT RES SHR S %CPU %MEM TIME+ COMMAND 进程id 用户名 优先级 nice值 进程使用 进程使用的 共享内存 进程 cpu 进程使用 进程使用 命令名 的虚拟内 未被换出的 大小 状态 百分比 的物理 的CPU 存总量, 物理内存大 单位kb 内存百分比 时间总计 单位kb 小,单位kb 单位1/100秒 命令使用: top - d p q c C S

27、s n u 参数简述,d 指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之 ; c 显示整个命令行而不只是显示命令名 u 显示指定用户的信息,和性能相关的命令,free: 内存使用量统计,通常在性能测试时使用此命令,它统计的比较准确; 在性能测试时还有其他统计命令,如vmstat,iostat,sar等可以根据需要结合使用,这里就不再介绍了;,网络监视命令,netstat :是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。 该命令的一般格式为: netstat 选项 命令中各选项的含义如下: -a 显示所有s

28、ocket,包括正在监听的。 -c 每隔1秒就重新显示一遍,直到用户中断它。 -i 显示所有网络接口的信息,格式同“ifconfig -e”。 -n 以网络IP地址代替名称,显示出网络连接情形。 -r 显示核心路由表,格式同“route -e”。 -t 显示TCP协议的连接情况。 -u 显示UDP协议的连接情况。 -v 显示正在进行的工作。 应用举例:stat an 显示所有的网络连接信息; 2. netstat ntp 显示所有的tcp连接情况,并且显示对应的执行程序; 其它用法可以根据需要进行参数组合,这里不再举例;,抓包命令,Linux中的抓包命令是tcpdump,通常用法如下: 1 抓

29、取比较详细信息 tcpdump -i eth0 -s 0 -n -xxXX -vv -e tcp port 1521 2 将码流保存到文件中 tcpdump -i eth0 -s 0 -n -w file.cap tcp port 1521 3 简单的抓包方式 tcpdump -i eth0 -s 0 -X port 1521,抓包命令,tcpdump部分参数含义: -i:指定网卡。 -n:显示ip,而不是主机名。 -c:指定抓多少个包后退出。 -A:以ASCII方式显示包内容,这个选项对文本格式的协议包非常有用。 -s:指定抓包显示一行的宽度,-s0表示显示完整的包,经常和-A一起用。 -x

30、/-xx/-X/-XX:以十六进制显示包内容,几个选项只有细微的差别,详见man手册。 -vv:详细信息。 -r:从文件中读取。 -w:导出到指定文件。 说明:在linux系统中如果要对本机抓包,将网卡换成本机网卡即可,网卡通过ifconfig a查看; tcpdump还有部分参数和用法这里没有列出,以上命令和参数基本能够满足我们日常工作需要,如果觉得不够可以自己继续深入学习。,43,第四章 Shell及shell编程,4.1 shell 的基本认识 Shell是UNIX提供的与用户交互的接口,一般系统会提供多种shell,如:Bourne shell , c_shell , korn she

31、ll等,shell工作可用下图表示:,Shell,命令解释,文件名取代,输入输出定向,建立连通管道,系统环境设置,程序语言设计,44,选择使用不同shell:,1) shell 功能侧重点不同 K-shell B-shell有程序设计优势 c-shell 在命令使用中有优势 2) 如何改变shell环境 echo $shell -查看当前shell shell程序位置 /usr/bin/csh c-shell /usr/bin/sh B-shell /usr/bin/ksh K-shell 在命令行输入shell程序名, 输入exit返回原注册shell.,45,调试SHELL程序,sh x

32、shell.sh其中:shell.sh就是待调试的脚本程序.此时,界面可显示执行的每一句shell.sh中的语句.,46,) 后台进程管理,% cc prgm.c &,47,sort :对各行按词组或字符进行分类排序。,比较时从第一个字符比起,再比第二个、第三个,选项: -b-忽略文件中的空格字符 -d-字符按字典顺序排序 -f-按大写字符排序 -n-按数字的数值大小排序 -o-排序输出存入文件 -r-排序按字典反序进行 例: $ sort -fn text1 $ sort -f -o text1 text2,48,4.3 shell 程序设计,B shell 的程序设计功能较强。,1. Sh

33、ell 程序的设计与执行 shell程序的功能是将命令序列(date ls -l) 组合并由系统自动执行。file.sh 文件交给系统执行可用三种方式实现: 。利用输入输出重定向 $ sh file1.sh 。把file1.sh当作sh的执行参数 $ sh file1.sh 。直接执行file1.sh程序 $ file1.sh,49,3)Shell 编程中三种引号的作用:,。单引号 :其中内容是字符串,没有shell的特殊含义; 。双引号“ ”:其中特殊字符作shell 含义解释,其它作字符;例如:$字符在双引号中就是有特殊含义的字符. 。反引号 :其中的命令可作为执行结果进行赋值。 例:$

34、file=report $ echo The time is date,the file is $file 回显: The time is date,the file is $file $echo “The time is date,the file is $file” 回显:The time is wed Aug 16 15:11:42 Roc 2000,the file is report. $ TT=date $ echo $TT 回显: wed Aug 16 15:11:42 Roc 2000,50,4) 变量的作用域:局部变量和全局变量,只有使用了export命令后,变量才可在子进程

35、中起作用:,$ u=unix $ echo $ux /显:unix $ sh /进子进程 $ echo $ux /显: $ exit $ echo $ux /显:unix $ export ux,$ sh /进子进程 $ echo $ux /显:unix $ exit,51,5)标准变量,Shell 标准变量,在shell进程创建时自动赋值:,变量用途 sh变量 csh变量 环境变量 用户名 user USER 注册目录 HOME home HOME 访问路径 PATH path PATH cd路径 CDPATH cdpath 提示符 PS1 prompt 辅提示符 PS2 终端类型 TERM

36、 term TERM 运行的shell SHELL shell,52,6) 位置变量,Shell 中命令行的参数可用单独的位置参数提取,它们是$1,$2, $3,$9. 考虑下列shell程序,其文件名为echoarg.sh:,echo $# for VAR in $* do echo $VAR done,执行此程序时用: $ echoarg.sh first second third 结果: 3 first second third,运行:Sh a b c d,53,6) 位置变量,出现上述结果的原因是程序中有位置参数的引用,$ echoarg.sh first second third (

37、 $0) $1 $2 $3,Shell编程中有关的变量还有: B shell C shell 变量作用 $# $#argv 位置参数个数 $? $status 前命令返回状态 $ $ 当前shell的pid $! 最近访问的后台pid,54,Test命令,格式:test expre 或 test 当表达式的值为真时,命令返回真值0,否则返回假值非0.可完成对文件,字符串,数字,表达式进行判别和求值。,1)用于对文件的测试,test -dfrmxs file 其中:-d file 判文件存在且为目录文件 -f file,判文件存在且为普通文件,-r file 判文件存在且为可读文件 -w fil

38、e 判文件存在且为可写文件 -x file 判文件存在且为可执行文件 -s file 判文件存在且长度为非零,例:test -d /home/usera & echo “目录 usera 存在” test -d /home/usera | echo “ 目录usera不存在或无此目录”,55,Test命令,2)对字符串S的测试,test s 字符串S为非空串时返回真值 test -zs 字符串为空时返回真值 test s1 = s2 字符串s1与 s2相同时为真值,3)对整数n 进行测试 test n1-eq n2 整数n1和n2相等时为真值 test n1-ne n2 整数n1和n2不相等时

39、为真值 test n1 -lt n2 整数n1小于n2时为真值 test n1 -le n2 整数n1小于等于n2时为真值 test n1 -gt n2 整数n1大于n2时为真值 test n1 -ge n2 整数n1大于等于n2时为真值,运行:1.sh,56,测试整数n时注意问题:,#!/bin/sh x1=“005“ x2=5 test $x1 = $x2 echo “$? 系统显示: 1 测试结果为假,两者不同“ test “$x1” -eq “$x2“ echo $? 系统显示: 0 测试结果为真,两者相同 运行:9.sh,57,4 .条件控制语句,在shell中用if 和case语句

40、形成程序的分支结构,1)if 语句,if if_list then then_list elif elif_list then then_list . else else_list fi,将test -d /home/usera & echo “目录”改为if 语句实现: if test -d /home/usera then echo “目录 usera 存在” fi 或写成: if -d /home/userd then echo “目录” fi,58,将位置参数中的内容传递到系统命令中,# !/bin/sh filename:testdir # 将 $1 传递到命令的变量表中 DIREC

41、=$1 if “ls -a $DIREC” = “”; / if-z “ls -a $DIREC” then echo “$DIREC is indeed empty” else echo “$DIREC is not empty” fi,运行: ./6.sh abcd,59,2)case语句,语法:case word in pattern -1) pat1 -list1; pattern -2) pat2 -list2; *) default -list; esac,其中:word将与各匹配模式比较,“;”符表示匹配结束,“*”号为通配符。,60,例1:向指定的文件中添加文本,#! /bin

42、/sh # filename:append.sh case $# in 1) cat $1; 2) cat$2$1; *) echo usage: append.sh from to ; esac,执行:$ 4.sh file1 $ 4.sh file1 file2,61,例2:写一段根据一天中不同时间给出问候信息的程序,# !/bin/sh # 练习 wh.sh # case 结构 hour=date +%H case $hour in 01-9|101) echo “Good morning!”; 1234567) echo “Good afternoon!”; *) echo “Good

43、 evening!”; esac,运行:sh,62,5. 循环语句,循环语句完成命令的重复执行,1)for 循环 语法:for var in word1 word2 wordn do commands done for 循环中可根据需要进行嵌套,63,例1:列出用户注册目录下的cc和work子目录中所有 .c文件。,# !/ bin/sh # 显示.c文件 cd $HOME for dir in cc work do echo “.in $dir.” cd $dir for file in *.c do ls -l $file done cd done,运行:sh,64,2) while 循环,以命令表的出口状态为判别条件,决定循环体中的命令是否执行。语法结构: while cmdlist1 do cmdlist2 done,例1:#!/bin/sh # while.sh while -r filea do echo before sleep sleep 5 echo sleep done done,例2:#! /bin/sh # cfile.sh VAL=1 while $VAL -lt 11 do touch file$VAL VAL=expr $VAL+1 done,运行:7.sh,运行:./8.sh,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1