【生物信息笔记】shell 脚本 (dry-2)

shell 和 shell script(脚本)区别:

shell 和 shell 脚本是两个不同概念,shell编程一般都是说shell脚本编程。shell本身是一个C语言编写的应用程序,让用户可以通过shell这个应用程序提供的界面访问操作系统内核的服务。

shell是用户与内核之间的中介,一个软件/一个程序/一个命令解释器,命令->shell->操作系统的内核可以理解的语言。

比如:Mac自带的shell(命令解释器)是bash。

shell脚本(shell script),一种电脑程序的文本文件。内容由一连串shell命令组成,被当作一种脚本语言来设计。shell 脚本(shell script),是一种为 shell 命令解释器编写的脚本程序

shell命令解释器读取shell脚本之后依照顺序运行其中的shell命令,最后输出结果。

利用shell script可以进行系统管理,文件操作。

---

一个shell脚本例子:

#! /bin/sh            【  指定脚本解释器/命令解释器】

cd~                      【切换到当前用户home目录】

mkdir shell-tut    【创建一个目录shell-tut】

for ((i=0;i<10;i++)); do  【循环条件,一共循环10次】

  touch test_$i.txt 【创建了10个txt文件,test_1...10.txt】

done                      【循环结束】

---

注释:cd,mkdir,touch是系统自带程序命令,一般在/bin 或者/usr/bin 目录下。

for,do,done是sh脚本语言的关键字。

shell脚本的编译环境

参考: http://www.runoob.com/linux/linux-shell.html

Shell 编程跟 java、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。

Linux 的 默认Shell 解释器种类众多,常见的有:

Bourne Shell(/usr/bin/sh或/bin/sh)

Bourne Again Shell(/bin/bash)

C Shell(/usr/bin/csh)

K Shell(/usr/bin/ksh)

Shell for Root(/sbin/sh)

同样,MacOS不仅带了sh,bash这俩最基本的解释器,还内置了ksh,csh,zsh等不常用的解释器。

(感觉好久没提Windows)目前主流的操作系统都支持shell编程。

Windows出厂时候没有内置shell解释器,需要自行安装,为了能同时使用grep,awk 等工具建议安装cygwin模拟器/mingw模拟器来模拟Linux环境(为不喜欢Windows又多了一个理由)。

编译器与解释器的区别:

参考:https://www.zhihu.com/question/21486706

理论上,只要一门计算机语言提供了shell解释器(而不是编译器)这门语言就可以成为脚本语言。常见的解释型语言都可以作脚本编程的。

我们编程一般都是使用高级语言,计算机不能直接理解高级语言,只能理解和运行机器语言,所以要把高级语言翻译为机器语言,计算机才能运行高级语言所编写的程序。

翻译点两种方式:编译和解释(区别是翻译的时间不同)


图片发自简书App



编译语言和解释语言的区别:

http://blog.csdn.net/zhu_xun/article/details/16921413

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 作者:qinjx原文地址:Shell脚本编程30分钟入门 什么是Shell脚本 示例 看个例子吧: 示例解释 第1...
    IT程序狮阅读 2,355评论 1 67
  • 什么是Shell脚本 示例 看个例子吧: 示例解释 第1行:指定脚本解释器,这里是用/bin/sh做解释器的 第2...
    余歌_非鱼阅读 4,777评论 2 93
  • 一,shell题记 不懂shell的程序员不是好程序员,学习shell是为了自动化,使用自动化可以非常有效的提高工...
    架构师小秘圈阅读 8,743评论 3 70
  • 本文全面系统地介绍了shell脚本调试技术,包括使用echo, tee, trap等命令输出关键信息,跟踪变量的值...
    liuzg0734阅读 935评论 0 14
  • 其实当初跟舍友讨论过薛之谦为什么迅速窜红的原因。因为段子对吧。 一个想要认真写歌的人没红,变成段子手之后就红...
    rikiW阅读 295评论 0 0