保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

LinuxShell基本运算符想玩转linux就请一直看下去

  我是IT悟道,点击右上方关注,每天分享IT、科技、数码方面的干货。
  Shell基本运算符
  Shell和其他编程语言一样,支持多种运算符,包括:算数运算符关系运算符布尔运算符字符串运算符文件测试运算符
  原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如awk和expr,expr最常用。
  expr是一款表达式计算工具,使用它能完成表达式的求值操作。
  例如,两个数相加(注意使用的是反引号而不是单引号):实例
  !binbash
  valexpr22
  echo两数之和为:val
  运行实例
  执行脚本,输出结果如下所示:两数之和为:4
  两点注意:表达式和运算符之间要有空格,例如22是不对的,必须写成22,这与我们熟悉的大多数编程语言不一样。完整的表达式要被包含,注意这个字符不是常用的单引号,在Esc键下边。算术运算符
  下表列出了常用的算术运算符,假定变量a为10,变量b为20:
  运算符
  说明
  举例
  加法
  exprab结果为30。
  减法
  exprab结果为10。
  乘法
  exprab结果为200。
  除法
  exprba结果为2。
  取余
  exprba结果为0。
  赋值
  ab将把变量b的值赋给a。
  相等。用于比较两个数字,相同则返回true。
  〔ab〕返回false。
  !
  不相等。用于比较两个数字,不相同则返回true。
  〔a!b〕返回true。
  注意:条件表达式要放在方括号之间,并且要有空格,例如:〔ab〕是错误的,必须写成〔ab〕。实例
  算术运算符实例如下:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  a10
  b20
  valexprab
  echoab:val
  valexprab
  echoab:val
  valexprab
  echoab:val
  valexprba
  echoba:val
  valexprba
  echoba:val
  if〔ab〕
  then
  echoa等于b
  fi
  if〔a!b〕
  then
  echoa不等于b
  fi
  执行脚本,输出结果如下所示:ab:30ab:10ab:200ba:2ba:0a不等于b注意:
  乘号()前边必须加反斜杠()才能实现乘法运算;if。。。then。。。fi是条件语句,后续将会讲解。在MAC中shell的expr语法是:((表达式)),此处表达式中的不需要转义符号。关系运算符
  关系运算符只支持数字,不支持字符串,除非字符串的值是数字。
  下表列出了常用的关系运算符,假定变量a为10,变量b为20:
  运算符
  说明
  举例
  eq
  检测两个数是否相等,相等返回true。
  〔aeqb〕返回false。
  ne
  检测两个数是否不相等,不相等返回true。
  〔aneb〕返回true。
  gt
  检测左边的数是否大于右边的,如果是,则返回true。
  〔agtb〕返回false。
  lt
  检测左边的数是否小于右边的,如果是,则返回true。
  〔altb〕返回true。
  ge
  检测左边的数是否大于等于右边的,如果是,则返回true。
  〔ageb〕返回false。
  le
  检测左边的数是否小于等于右边的,如果是,则返回true。
  〔aleb〕返回true。实例
  关系运算符实例如下:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  a10
  b20
  if〔aeqb〕
  then
  echoaeqb:a等于b
  else
  echoaeqb:a不等于b
  fi
  if〔aneb〕
  then
  echoaneb:a不等于b
  else
  echoaneb:a等于b
  fi
  if〔agtb〕
  then
  echoagtb:a大于b
  else
  echoagtb:a不大于b
  fi
  if〔altb〕
  then
  echoaltb:a小于b
  else
  echoaltb:a不小于b
  fi
  if〔ageb〕
  then
  echoageb:a大于或等于b
  else
  echoageb:a小于b
  fi
  if〔aleb〕
  then
  echoaleb:a小于或等于b
  else
  echoaleb:a大于b
  fi
  执行脚本,输出结果如下所示:10eq20:a不等于b10ne20:a不等于b10gt20:a不大于b10lt20:a小于b10ge20:a小于b10le20:a小于或等于b布尔运算符
  下表列出了常用的布尔运算符,假定变量a为10,变量b为20:
  运算符
  说明
  举例
  !
  非运算,表达式为true则返回false,否则返回true。
  〔!false〕返回true。
  o
  或运算,有一个表达式为true则返回true。
  〔alt20obgt100〕返回true。
  a
  与运算,两个表达式都为true才返回true。
  〔alt20abgt100〕返回false。实例
  布尔运算符实例如下:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  a10
  b20
  if〔a!b〕
  then
  echoa!b:a不等于b
  else
  echoab:a等于b
  fi
  if〔alt100abgt15〕
  then
  echoa小于100且b大于15:返回true
  else
  echoa小于100且b大于15:返回false
  fi
  if〔alt100obgt100〕
  then
  echoa小于100或b大于100:返回true
  else
  echoa小于100或b大于100:返回false
  fi
  if〔alt5obgt100〕
  then
  echoa小于5或b大于100:返回true
  else
  echoa小于5或b大于100:返回false
  fi
  执行脚本,输出结果如下所示:10!20:a不等于b10小于100且20大于15:返回true10小于100或20大于100:返回true10小于5或20大于100:返回false逻辑运算符
  以下介绍Shell的逻辑运算符,假定变量a为10,变量b为20:
  运算符
  说明
  举例
  逻辑的AND
  〔〔alt100bgt100〕〕返回false
  逻辑的OR
  〔〔alt100bgt100〕〕返回true实例
  逻辑运算符实例如下:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  a10
  b20
  if〔〔alt100bgt100〕〕
  then
  echo返回true
  else
  echo返回false
  fi
  if〔〔alt100bgt100〕〕
  then
  echo返回true
  else
  echo返回false
  fi
  执行脚本,输出结果如下所示:返回false返回true字符串运算符
  下表列出了常用的字符串运算符,假定变量a为abc,变量b为efg:
  运算符
  说明
  举例
  检测两个字符串是否相等,相等返回true。
  〔ab〕返回false。
  !
  检测两个字符串是否不相等,不相等返回true。
  〔a!b〕返回true。
  z
  检测字符串长度是否为0,为0返回true。
  〔za〕返回false。
  n
  检测字符串长度是否不为0,不为0返回true。
  〔na〕返回true。
  检测字符串是否为空,不为空返回true。
  〔a〕返回true。实例
  字符串运算符实例如下:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  aabc
  befg
  if〔ab〕
  then
  echoab:a等于b
  else
  echoab:a不等于b
  fi
  if〔a!b〕
  then
  echoa!b:a不等于b
  else
  echoa!b:a等于b
  fi
  if〔za〕
  then
  echoza:字符串长度为0
  else
  echoza:字符串长度不为0
  fi
  if〔na〕
  then
  echona:字符串长度不为0
  else
  echona:字符串长度为0
  fi
  if〔a〕
  then
  echoa:字符串不为空
  else
  echoa:字符串为空
  fi
  执行脚本,输出结果如下所示:abcefg:a不等于babc!efg:a不等于bzabc:字符串长度不为0nabc:字符串长度不为0abc:字符串不为空文件测试运算符
  文件测试运算符用于检测Unix文件的各种属性。
  属性检测描述如下:
  操作符
  说明
  举例
  bfile
  检测文件是否是块设备文件,如果是,则返回true。
  〔bfile〕返回false。
  cfile
  检测文件是否是字符设备文件,如果是,则返回true。
  〔cfile〕返回false。
  dfile
  检测文件是否是目录,如果是,则返回true。
  〔dfile〕返回false。
  ffile
  检测文件是否是普通文件(既不是目录,也不是设备文件),如果是,则返回true。
  〔ffile〕返回true。
  gfile
  检测文件是否设置了SGID位,如果是,则返回true。
  〔gfile〕返回false。
  kfile
  检测文件是否设置了粘着位(StickyBit),如果是,则返回true。
  〔kfile〕返回false。
  pfile
  检测文件是否是有名管道,如果是,则返回true。
  〔pfile〕返回false。
  ufile
  检测文件是否设置了SUID位,如果是,则返回true。
  〔ufile〕返回false。
  rfile
  检测文件是否可读,如果是,则返回true。
  〔rfile〕返回true。
  wfile
  检测文件是否可写,如果是,则返回true。
  〔wfile〕返回true。
  xfile
  检测文件是否可执行,如果是,则返回true。
  〔xfile〕返回true。
  sfile
  检测文件是否为空(文件大小是否大于0),不为空返回true。
  〔sfile〕返回true。
  efile
  检测文件(包括目录)是否存在,如果是,则返回true。
  〔efile〕返回true。
  其他检查符:S:判断某文件是否socket。L:检测文件是否存在并且是一个符号链接。实例
  变量file表示文件varwwwrunoobtest。sh,它的大小为100字节,具有rwx权限。下面的代码,将检测该文件的各种属性:实例
  !binbash
  author:菜鸟教程
  url:www。runoob。com
  filevarwwwrunoobtest。sh
  if〔rfile〕
  then
  echo文件可读
  else
  echo文件不可读
  fi
  if〔wfile〕
  then
  echo文件可写
  else
  echo文件不可写
  fi
  if〔xfile〕
  then
  echo文件可执行
  else
  echo文件不可执行
  fi
  if〔ffile〕
  then
  echo文件为普通文件
  else
  echo文件为特殊文件
  fi
  if〔dfile〕
  then
  echo文件是个目录
  else
  echo文件不是个目录
  fi
  if〔sfile〕
  then
  echo文件不为空
  else
  echo文件为空
  fi
  if〔efile〕
  then
  echo文件存在
  else
  echo文件不存在
  fi
  执行脚本,输出结果如下所示:文件可读文件可写文件可执行文件为普通文件文件不是个目录文件不为空文件存在

长城导游词亲爱的游客:你们好,我叫赵帅超你们可以叫我赵导,今天我们要去长城游玩,我记得毛泽东爷爷说过:不到长城非好汉。这句话说的非常好。长城它像一条长龙,在崇山峻岭之间蜿蜒盘旋。……关于雪的作文300字在二零一零年下了一场雪后,我就没有见到过那白茫茫、冷冰冰的雪了。回想起那场雪,我不由地笑了。天气太冷了,不能写作业,老师就让我们去操场上堆雪人、打雪仗。我们女孩子堆了一群……一缕阳光Isthesunshineofthesea?被阳光所照耀的大海?已经是下午最后一节课了,夕阳的余辉洒落在教室里,老师正背着黑板书写着那光看着就令人头皮发麻的地理知识……美丽的家乡作文500字国庆节到了,我既没有去观赏历史悠久的名胜古迹,也没有去浏览祖国的名山,而是跟爸妈回了一趟老家。乡村的早晨,农民伯伯们早早就起床了,各家各户的炊烟袅袅升起,整个乡村笼罩在轻……有关小学生郊游作文500字锦集六篇在平平淡淡的学习、工作、生活中,大家都经常接触到作文吧,作文是经过人的思想考虑和语言组织,通过文字来表达一个主题意义的记叙方法。相信很多朋友都对写作文感到非常苦恼吧,以下是小编……我的叔叔于勒的续写300字我父亲带着两个姐姐和女婿向这边走时,突然有一个衣装华贵,带着眼睛,穿着擦得粉亮的黑皮鞋,昂首挺胸,威风凌凌的田人时,只见我父亲惊呆了,眼睛睁得老大,半天说不出一句话,兴奋地跑到……看我的任意门优秀作文对付坏人,我第一个拿出任意变装照相机,这相机上有比十二生肖还多的动物选项,我就选定猪,轰的一声,他就变成一只猪了,全班同学当然笑的乐不可支。就在他变成笑柄的同时,我鼓起最……圣诞贺卡(一)钱可以买到许多东西,但是绝对买不到友谊。拥有真挚的友谊的人是最幸福的人。题记云梦的贺卡MerryChristmas!Happytimes!好友:云……高一叙事作文回忆曾几何时,我倦于几人世的喧嚣和杂乱,困扰于悠长的回忆。题记早上用凉水洗脸时才忽然意识到,大把的日子一如水龙头里喷出的水,由我指隙匆匆溜走,甚至没来得及放下潦草落幕的……仰望星空优秀初中生日记那个夜晚,孤独迷惘的我打开了这个电影《星空》。看了,哭了,沉默了,回忆了。在我小的时候,我不记得当时爸妈是做什么工作的,只记得,他们很忙,真的很忙。我被送到爷爷的家里度过……特朗普回归自创社交媒体平台真相社交,并称不会再重返推特福克斯新闻4月29日报道,周四,美国前总统特朗普加入了他自己创立的社交媒体平台真相社交(TruthSocial),一年多来首次在一个社交媒体平台上发帖。我回来了!COVFEFE……自信心理的重要性高中优秀作文人生,是一场战斗的过程,时而平稳顺利,时而坎坷残酷,谁也不能卜知自己的命运,要想前进,要想成功,自信是必备的。人,只有相信自己,才能实现自己的理想。同时,人生又像一座险峻的山峰……
关于偶像的作文偶像正能量偶像,这是一个具有多重意义的名词。通常,我们把它理解为受人崇拜或尊敬的一类人。在我眼里,我的偶像一定是一个能带给我向上精神的人。而这样的一个人,就叫做阿尔伯特middot;爱因……新年愿望初中作文500字新年愿望?我有什么新年愿望呢?希望爸妈身体健康?希望我学习天天向上?不!这些太老套了既然是新年那就要有崭新的愿望!世界末日都过了,我们当然也要有新愿望!这不,前几天,我在……小智的魔法书作业上篇内容有两个作业,一个是seed()这个工具,一个是choice(sequence)这个工具,先说seed()工具,它是在工具包random里的,很显然使用前需要用impor……三年级叙事作文爸爸帮我治打嗝昨天中午,我在回家的路上忽然开始不停地打嗝,感觉很难受。我把打嗝的事儿告诉了爸爸,爸爸听了,忽然严肃地说:徐乐,你是不是在考场抄别人答案被翟老师发现了?我愣了一下,……精彩瞬间小学生作文500字11月7日的早上,我们沐浴着阳光,怀着无比兴奋地心情迎来了檀枫小学第一届田径运动会。我和大家来说说我们参加跳远项目的精彩瞬间吧!上午9时,当广播里响起:请参加跳远比赛的同……一切都会过去,一切都不会过去品学网专稿未经允许不得转载曾经迷失,曾经迷惘,曾经无助,曾经愤怒。毕竟事过境迁,时间可以融化一切。我仍是我,过去的点点滴滴都已化成一缕缕朦胧的青烟,只待时间的沉淀不断凝聚……2021最新文字控说说所有经久的流年,最终将会在栀子花开的清香里,褪尽生命的喧嚣,沉浸在最美的纯净里,不问世俗,不问琐碎,只求一份最真的美丽,只求一份淡然。小编今天给广大朋友们分享的是最新文字控说说……读昆虫记有感关于《昆虫记》,让我感到差异的是它的写法。与以往看的书,《times;times;百科全书》或《times;times;资料库》那种一抓一大把的介绍书不同的是,我更倾向于把它看……河北科技计划项目揭榜挂帅推动优质科技成果落地河北新闻网讯(河北日报记者王璐丹)近日,河北省科技厅印发《河北省科技计划项目揭榜挂帅组织实施工作指引》,从项目的组织管理、立项实施等方面创新支持模式,推动更多优质的科技成果在河……2022年最值得期待的5大项目1。MetamaskMetamask是第一个在全球范围内最受欢迎的加密货币钱包。长期以来,关于MetaMask发行其代币MASK的可能性一直被广泛讨论并被MetaMask……爱阅读的朋友作文250字梁家仪,她个子廋廋的,长着一张瓜子脸,眼睛大大的,戴着一副眼睛,扎着一条垂下的马尾辫,好看极啦。一次,我来到家仪的家里,我从窗户外看见梁家仪在看书,我在窗户那儿喊:梁家仪……追忆母爱作文导语:母爱是一碗姜汤,让你久久回味;母爱是一个方向,让你迷途知返。下面是小编为大家带来的追忆母爱作文,希望对大家有所帮助。追忆母爱作文1这个学期,我们学习了季羡林的《永久……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网