仓酷云

标题: 给大家带来shell 下令判别实行语法 [打印本页]

作者: 只想知道    时间: 2015-1-14 20:14
标题: 给大家带来shell 下令判别实行语法
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!一连实行用分号
偶然候我们想要在下令行下,写下多条下令。这时候候该怎样操纵呢。以下所示:
  1. #ls/tmp/***x;echo/tmp/***xls:/tmp/***x:Nosuchfileordirectory/tmp/***x
复制代码
一样平常/tmp/目次下,不会有***x文件。这个文件我瞎写的,次要用来展现没乐成实行。
可是下面只思索了一连实行,假如第一条下令失利了,第二条仍旧会实行,即下令之间没有相干性,怎样使得第一条下令实行乐成才实行第二条下令,大概反过去,第一条下令实行失利才实行第二条下令呢。
经由过程变量$?来判别实行
  1. //没有乐成实行前一条下令时,$?输入1#ls/tmp/***x;echo$?ls:/tmp/***x:Nosuchfileordirectory1//新建一个***x文件#touch/tmp/***x//乐成实行前一条下令时,$?输入0#ls/tmp/***x;echo$?/tmp/***x0
复制代码
假如乐成实行下令,$?变量会被赋值为0,反之,赋值为-1。经由过程判别$?变量的体例的确能够满意我们的请求,可是必要用if判别,要写剧本,对照烦琐,有无对照便利的下令呢。哈,一定有的噻。
shell中还供应了快速操纵符:&&和||
  1. //此时存在/tmp/***x文件,实行了&&前面的下令#ls/tmp/***x&&echo/tmp/***xexits/tmp/***x/tmp/***xexits//此时存在/tmp/***x文件,不实行||前面的下令#ls/tmp/***x||echo/tmp/***xexits/tmp/***x
复制代码
我们对上例能够这么剖析,&&署名的下令实行乐成就实行前面的下令,||后面的下令实行失利才实行前面的下令。
那末多个&&,||同时呈现时,实行按次是怎样的呢?
以下例子用以判别/tmp/aaaa是不是存在,并输入了局
  1. #ls/tmp/aaaa&&echo"exist"||echo"notexist"ls:/tmp/aaaa:Nosuchfileordirectorynotexist#touch/tmp/aaaa#ls/tmp/aaaa&&echo"exist"||echo"notexist"/tmp/aaaaexist
复制代码
因而可知,我们只需依照从左到右顺次判别便可。注重,假如||或&&前下令没有实行,则当作实行失利来处置。
欢迎大家来到仓酷云论坛!
作者: 变相怪杰    时间: 2015-1-15 07:49
标题: 给大家带来shell 下令判别实行语法
支持,赞一个
作者: 灵魂腐蚀    时间: 2015-1-17 17:47
随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。
作者: 深爱那片海    时间: 2015-1-26 21:16
一定要学好命令,shell是命令语言,命令解释程序及程序设计语言的统称,shell也负责用户和操作系统之间的沟通。
作者: 不帅    时间: 2015-2-5 03:04
老实说,第一个程序是在C中编译好的,调试好了才在Linux下运行,感觉用vi比较麻烦,因为有错了不能调试,只是提示错误。
作者: 只想知道    时间: 2015-2-11 03:46
目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。
作者: 爱飞    时间: 2015-3-1 21:17
老实说,第一个程序是在C中编译好的,调试好了才在Linux下运行,感觉用vi比较麻烦,因为有错了不能调试,只是提示错误。
作者: 仓酷云    时间: 2015-3-11 02:11
在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。
作者: 再见西城    时间: 2015-3-17 20:51
为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。
作者: 柔情似水    时间: 2015-3-25 04:27
选择一些适于初学者的Linux社区。




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2