Docker技术给老百姓的生活带来便利可以说非常显著。在过去如果想要安装一个软件,面里的最大问题大概就是相关依赖安装和编译环境,在虚拟化环境下一切就变得井然有序得多,但是Docker技术带来的负面影响就是由于程序是直接封装的,如果非镜像的制作者,难以得知软件运行的细节。这就造成了一系列问题(例如环境变量、shell版本等)。采用Achelous调度系统,可以比较轻松得解决环境变量问题,但是Linux Shell版本的问题,还是需要用户自己留个神。
本文就目前常见的Linux Shell版本进行基础介绍,尤其是对其脚本编写中的语法问题给出一个概要式说明,以资读者放心使用。
1.1 Linux Shell 是个啥?
简单来说Linux Shell是用户与内核交互的渠道。在生物信息现实应用上,Shell 除了命令行交互模式之外,也用做一遍批处理脚本的编写。其可以实现一般程序控制语言常见的顺序执行、条件判断和循环操作。
1.2 Shell 也存在版本差异
与Linux一样,Shell也是存在发行版本差异的。目前相对比较常见的类型有以下几类:
-
sh
:编写脚本最为常见的就是/usr/bin/sh
其正式名称为 Bourne Shell。完全符合POSIX shell 规范。 -
bash
ÿ