什么是SHELL?
  shell的中文意思就是贝壳,其实比较类似于我们内核的壳。简而言之就是只要能够操作应用程序的接口都能够称为SHELL。狭义的shell指的是命令行方面的软件,广义的SHELL则包括图形界面。

SHELL的版本
  在鸟哥的私房菜的一书中,介绍了UNIX的版本以及众多的SHELL版本。
  早在UNIX年代,发展者众多,所以由于shell依据发展者的不同就有许多版本,比如sh,C SHell,K SHell,还有TCSH等,每一种Shell都各有特点。当然也有我们的bash,bash这个shell是Bourne Shell的增强版本,也是基于GNU的架构下发展出来的。

sh和bash的区别
  因为bash是sh的增强版本,在我们平常实地操作的时候如果sh这个命令不灵了我们应当使用bash。
  举个例子来说如果我们使用数字的加减
  有几种不同的版本,

#! /bin/bash
no1=
no2=
let no1++
let result=no1+no2
echo $result
result=$[no1+no2]
echo $result
result=$[$no1+]
echo $result
result=$((no1+))
echo $result 如果使用sh则输出
test3.sh: : test3.sh: let: not found
test3.sh: : test3.sh: let: not found
$[no1+no2]
$[+]

  可以看见sh不仅不支持多种命令,而且很多细小的差别。 
  所以其实我们应该更多的使用bash,也就是./xx.sh,前提是修改权限,chmod a+x xx.sh。

最新文章

  1. 【Spring】简单的Spring MVC入门例子
  2. Python 操作 MySQL 之 pysql 与 ORM(转载)
  3. java8 函数式编程
  4. IOS之未解问题--给UITableView提取UITableViewDataSource并封装瘦身失败
  5. linux svn客户端 常用命令
  6. 一张图告诉你为什么 Gmail 是最好的邮箱,以及大量私货
  7. Android L Camera2 API 使用实例程序汇总
  8. 英特尔实感SDK 代码示例
  9. Couldn't get lock for %t/vertx.log
  10. Mybatis 打开连接池和关闭连接池性能对比
  11. 【HDOJ】2319 Card Trick
  12. 一句话解释JVM中空间分配担保的问题
  13. 随记PC-win7 64位系统网络连接状态一直转圈、等待状态的异常解决方案
  14. HI258摄像头旋转配置问题
  15. 【.NET Core项目实战-统一认证平台】第一章 功能及架构分析
  16. linux 创建sudo账号.md
  17. 【IT界的厨子】酱香鲈鱼
  18. Oracle 未能加载文件或程序集Oracle.DataAccess
  19. delphi 分享三个随机字符串
  20. Java基础83 JSP标签及jsp自定义标签(网页知识)

热门文章

  1. Swift LeetCode 目录 | Catalog
  2. 7. VIM 系列 - 程序员利器(语法检测、代码块补全、symbol管理、函数跳转)
  3. 跟我一起学opencv 第五课之调整图像亮度和对比度
  4. 细说mysql索引
  5. 死磕 java集合之HashSet源码分析
  6. 《深入理解Java虚拟机》-----第4章 虚拟机性能监控与故障处理工具
  7. ShareIntentUtil【调用系统自带的分享的工具类】
  8. openLayers 3知识回顾
  9. idea avtiviti 插件中文乱码
  10. 如何大幅提升web前端性能之看tengine在大公司架构实践