资源描述:
《linux shell编程总结》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、linuxshell编程总结本周学习了unix/linuxshell编程,参考的是《LINUX与UNIXShell编程指南》,DavidTansley著;徐焱,张春萌等译,由机械工业出版社出版的了,往内页那么一翻,都是2000年3月译的了,原书估计会更老,不过图书馆能找到合适于我这种初学者的也许就这么本了,将就着的吧。这本书是以Bourneshell这个UNIX系统都支持的标准shell。BourneAgainshell(BASH)、TCSHshell和Zshell它们都是相应的UNIX命令解释
2、程序的增强型版本。BASHshell是Bourneshell的高级版本。TCSH原来是为UNIX的BSD版本开发的Cshell的增强型版本。1.基本unix/linux命令(1)setuid,guid作用:suid意味着如果某个用户对属于自己的shell脚本设置了这种权限,那么其他用户在执行这一脚本时也会具有其属主的相应权限。guid执行相应脚本的用户将具有该文件所属用户组中用户的权限例:chmod4755(2)chmod,chown,chgrp作用:修改权限格式:chmod[who]opera
3、tor[permission]filenamewho:u(文件属主)g(同组用户)o(其他用户)a(所有用户)operator:+(增加权限)-(取消权限)=(设定权限)permission:r(读)w(写)x(执行)s(文件属主和组set-ID)t(粘性位*)l(给文件加锁,使其他用户无法访问)例:chmodugo+rwxmyfile将myfile文件给u,g,o用户r,w,x的权限(3)umask作用:设置所创建文件/目录的缺省权限格式:umask[value]例:umask022touch
4、file1则file1的权限部分变为:-rw-r--r--(4)ln格式:ln[-s]source_pathtarget_path(5)touch作用:创建一个空文档格式:toughmyfile注解:toughmyfile将创建一个文件myfile(6)find作用:搜索文件格式:findpathname-options[-print-exec-ok]-print:find命令将匹配的文件输出到标准输出-exec:find命令对匹配的文件执行该参数所给出的shell命令,相应命令的格式为'com
5、mand'{};-ok:作用和-exec作用相同。只不过每一步执行都需要用户的确认-options:(主要的)-name:按文件名查找-perm:按文件权限查找-prune:使find命令不在当前指定的目录中查找-user:按照文件属主查找-group:按照文件所属组来查找-mtime-n+n,按照文件的更改时间来查找,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前;此外,还有-atime,-ctime选项,和-mtime选项类似-type:查找某一类型的文件,诸如:b
6、(块设备文件),d(目录),c(字符设备文件),p(管道文件),l(符号链接文件),f(普通文件)-sizen[c]:查找文件长度为n块的文件例:在当前目录及其子目录中查找所有的"*.txt"文件find.-name"*.txt"-print在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件find.-perm755-print在当前目录下查找除目录以外的所有类型的文件find.!-typed-print用ls-l命令列出所匹配的文件find.-ty
7、pef-execls-l{};在/logs目录中查找更改时间在5日以前的文件并删除它们findlogs-typef-mtime+5-execrm{};(7)echo作用:显示文本行或变量,或者把字符串输入到文件格式:echostring例:给出提示符,并输入值给变量nameecho"What'syourname:c"readname(8)pg作用:显示文件格式:pgfilename(9)read作用:读入值给变量格式:readvar例:readname从键盘读入字符到name变量(10)c
8、at作用:显示文件格式:catfilename(11)tee作用:把输出的一个副本输送到标准输出,另一个副本拷贝到相应的文件中格式:teefilename例:who
9、teewho.out使用who命令,结果输出到屏幕上,同时保存在who.out文件中(12)grep(全局正则表达式)作用:允许对文本文件进行模式查找,如果找到匹配模式,grep打印包含模式的所有行格式:grep[options]基本正则表达式[文件]常用options值:-c只输出匹配行的计数-i不区分大小写(只适用于单字符)-h