shell基础linux命令培训.pptx
- 文档编号:1390292
- 上传时间:2022-10-21
- 格式:PPTX
- 页数:43
- 大小:398.40KB
shell基础linux命令培训.pptx
《shell基础linux命令培训.pptx》由会员分享,可在线阅读,更多相关《shell基础linux命令培训.pptx(43页珍藏版)》请在冰豆网上搜索。
Shell编程基础及ab简介,郑金江,2022/10/21,1,2011-12-29,内容简介,2022/10/21,2,Shell,常用的shell,基本概念,2022/10/21,3,文件权限,设置权限,文件权限,2022/10/21,4,文件操作,常用命令,目录操作,2022/10/21,5,PS命令,ps的参数非常多,在此仅列出几个常用的参数-A列出所有的进程-w显示加宽可以显示较多的资讯-au显示较详细的资讯-aux显示所有包含其他使用者的进程au(x)输出格式:
USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMANDUSER:
进程拥有者PID:
pid%CPU:
占用的CPU使用率%MEM:
占用的内存使用率VSZ:
占用的虚拟内存大小RSS:
占用的内存大小TTY:
虚拟终端(minordevicenumberoftty)STAT:
该进程的状态:
D:
不可中断的静止(通悸缜b进行I/O动作)R:
正在执行中S:
静止状态T:
暂停执行Z:
不存在但暂时无法消除W:
没有足够的内存分页可分配:
高优先序的进程N:
低优先序的进程L:
有内存分页分配并锁在内存内(即时系统或捱AI/O)START:
进程开始时间TIME:
执行的时间COMMAND:
所执行的指令,2022/10/21,6,常用命令,TOP+d:
改变显示的更新速度或是在交谈式指令列(interactivecommand)按s+q:
没有任何延迟的显示速度如果使用者是有superuser的权限则top将会以最高的优先序执行+c:
切换显示模式共有两种模式一是只显示执行档的名称另一种是显示完整的路径与名称+S:
累积模式会将己完成或消失的子进程(deadchildprocess)的CPUtime累积起来+s:
安全模式将交谈式指令取消,避免潜在的危机+i:
不显示任何闲置(idle)或无用(zombie)的进程+n:
更新的次数搭配n参数一起使用可以用来将top的结果输出到档案内完成后将会退出top+b:
批次档模式,KILLkill-ssignal|-p-apid.kill-lsignal说明kill送出一个特定的信号(signal)给进程id为pid的进程根据该信号而做特定的动作,若没有指定,预设是送出终止(TERM)的信号把计-s(signal):
其中可用的讯号有HUP
(1),KILL(9),TERM(15),分别代表着重跑,砍掉,结束;详细的信号可以用kill-l-p:
印出pid,并不送出信号-l(signal):
列出所有可用的信号名称,环境变量,什么是环境变量?
Linux是一个多用户的操作系统。
多用户意味着每个用户登录系统后,都有自己专用的运行环境。
而这个环境是由一组变量所定义,这组变量被称为环境变量。
用户可以对自己的环境变量进行修改以达到对环境的要求。
常用环境变量有HOME,PATH,LOGNAMEcsh使用setenv设置环境变量,unsetenv取消ksh和bash使用export命令设置,unset取消使用env查看所有环境变量,变量,2022/10/21,7,本地变量,csh使用set设置本地变量,unset取消ksh和bash可直接使用,unset取消使用set查看所有本地变量本地变量仅可以用于当前shell脚本生命周期,引用变量,$variblename,$variblename:
-tmpvar$variblename:
=resetvar例如:
a=123echo$a,变量,2022/10/21,8,位置变量,$0为脚本名,确切的说是运行该脚本的命令$1,$2,.$9为运行脚本的命令参数使用shift命令可以移动参数位置,每执行一次参数向左偏移一个位置,例子:
#!
/bin/bash#Filename:
test2.shecho$0is$0echo$#is$#echo$is$echo$-is$-echo$1is$1echo$2is$2echo$3is$3shiftecho-echo$1is$1echo$2is$2,变量,2022/10/21,9,特殊变量,变量,2022/10/21,10,Echo输出字符或者变量内容,echo-eThisisatesttACE!
necho$HOMEecho007“echo在实际开发时经常用来向屏幕输出提示信息以及记录日志文件,Cat命令可以用于显示或者拼接文件,roothostname#cat2.txt1.txt12345,输入输出,2022/10/21,11,read从键盘或者文件中读取文件,readvarible1varible2readvar1var2fileread读入变量时默认的分隔符是空格超长部分将全部作为最后一个变量的内容例如:
echon“输入你的名字”/-n表示不换行readnameecho$nameexit0,输入输出,2022/10/21,12,#!
/bin/bashread-pEnteryourname:
nameechohello$name,welcometomyprogramexit01.txt内容:
1357readabcd1.txtecho$a$b$c$dread计时输入#!
/bin/bashifread-t5-ppleaseenteryourname:
namethenechohello$name,welcometomyscriptelseecho“sorry,tooslowfiexit0,2022/10/21,13,输入限定的字符#!
/bin/bashread-n1-pDoyouwanttocontinueY/N?
answercase$answerinY|y)echofine,continue;N|n)echook,goodbye;*)echoerrorchoice;esacexit0,2022/10/21,14,read读取文件#!
/bin/bashcount=1catfile|whilereadlinedoechoLine$count:
$linecount=$count+1doneechofinishexit0,/dev/null空设备,2022/10/21,15,标准输入标准输出标准错误,标准输入文件描述符0,缺省为键盘标准输出文件描述符1,缺省为屏幕标准错误文件描述符2,缺省为屏幕,输入输出重定向,、fileecho“content”fileecho“content”file2&1(ksh)readnamefiledbaccessdbname!
select*fromtable!
输入输出,2022/10/21,16,测试文件状态,条件测试,2022/10/21,17,逻辑操作符,-a逻辑与-o逻辑或!
逻辑非,字符串测试,test“string”teststring_operator“string”test“string”string_operator“string”string_operator“string”“string”string_operator“string”string_operator可以为=(等于),!
=(不等于),-z(空串),-n(非空串),条件测试,2022/10/21,18,数值测试,“number1”numberic_operator“number2”-eq数值相等-ne数值不相等-gt第一个个数大于第二个数-lt第一个数小于第二个数-le第一个数小于等于第二个数-ge第一个个数大于等于第二个数,条件测试,2022/10/21,19,for变量名in列表do命令1命令2done-breakcontinue,if条件1then命令1elif条件2命令2else命令3fi,控制流程,case值in模式1)命令1;模式2)命令2;*)命令;esac,2022/10/21,20,For循环,#!
/bin/bashfor(i=1;i=10;i+)doecho$(expr$i*4);done,#!
/bin/bashforiinls/tmpdoecho$idone,控制流程,#!
/bin/bashforiinseq100doif(i%3=0)thenecho$icontinuefidone,forloop是从一个清单列表中读取变量值,并依次的循环执行do到done之间的命令行,2022/10/21,21,until条件do命令1命令2done,while条件do命令1命令2done,控制流程,2022/10/21,22,util&while,num=1until$num-gt10;doechonumis$numnum=$($num+1)doneOrnum=1until!
$num-le10;doechonumis$numnum=$($num+1)done,num=1while$num-le10;doechonumis$numnum=$($num+1)done,控制流程,Util是直到返回的结果是真就结束,while是返回结果为真则执行,2022/10/21,23,定义函数的方式,function-name()命令或者functionfunction-name()命令,#!
/bin/bash#hellobyefunctionfunctionhello()a=100echo$0echohello!
Thefirstparameteris$1functionbye()a=99echo$0#echosmallrole,byeecho“bye,Thefirstparameteris$1hellogoodboy#byebyehiecho$?
echo$a,函数,Shell的局部变量需要特别申明:
local,2022/10/21,24,函数的引用,在当前脚本中定义的函数可以直接引用可以将函数放到单独的文件中,在使用前进行加载:
.,函数,#!
/bin/bash#Hellofunctionfunctionhello()echoHello!
return1,#!
/bin/bash#hellof.Hellofunctionhello,2022/10/21,25,正则表达式(以下简称Regexp)是一种字串表达的方式.可用以指定具有某特征的所有字串.一个正则表达式是由文本字符组成的一个匹配模式串。
用来与文本进行匹配,当匹配成功时,表达式为真,否则表达式为假在行尾以$匹配字符串或字符:
word$使用匹配模式结果出现的次数:
A2B使用匹配一个范围或集合:
0-9,正则表达式,2022/10/21,26,正则表达式基本元字符,正则表达式,2022/10/21,27,Find命令的格式,findpathname-options-printexec-ok-print将找到的结果打印到屏幕-exec对找到的文件执行指定的命令,如:
find.-name“*.scc”-execrm;-ok与-exec作用相同,但是每操作一个文件都需要用户确认,find,2022/10/21,28,Find命令常用选项,-name-mtime-n+n-newer-newerfile1!
file2查找更改时间比文件file1新但比文件file2旧的文件。
-typeb-块设备文件。
d-目录。
c-字符设备文件。
p-管道文件。
l-符号链接文件。
f-普通文件。
例子:
find/usr/database-mtime+2-execrm-rf;,部分选项说明,-aminn查找系统中最后N分钟访问的文件-atimen查找系统中最后n*24小时访问的文件-cminn查找系统中最后N分钟被改变文件状态的文件-ctimen
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- shell 基础 linux 命令 培训