Linux脚本(shell)编程(一) 简单入门HelloWorld

转载 2011年01月09日 19:50:00

      在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下command.com。它接收用户命令,然后调用相应的应用程序。同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。shell是一种解释型编程语言,这些都不重要,重要的是怎么使用它。它是比较简单的一种语言,主要用于写一些脚本代码,一些批处理或安装程序。

      为了更好地理解,我们开始编写第一个shell脚本:“helloworld!”

      在某个目录下,新建一个文件,取名“helloworld.sh”

       

      再修改这个程序的运行权限,具体操作如下:

 

 

 

 

运行:

运行方式有两种

一. 到那个文件夹下,输入如下语句。

 

运行截图:

 

二. 到那个文件夹下,输入如下语句(它的必备条件是1.helloworld的路径设置正确,即这里的"#!bin/sh",2.helloworld.sh拥有运行权限)

 

 

 

运行截图:

 

 

 

 

问题解析:

1. sh的路径设置错误

查看helloworld.sh文件中的第一行是否为“#!bin/sh”

 

 

接下来尝试另一个例子:

 

 

 

我们看看每一句的意义:
       第一行,#! 是说明 hello.sh 这个文件的类型的,有点类似 Windows 系统下用文件后缀来表示不同文件类型的意思。Linux 系统根据 "#!" 及该字串后面的信息确定该文件的类型。在 BASH 中 第一行的 "#!" 及后面的 "/bin/bash" 就表明该文件是一个 BASH 程序,需要由 /bin 目录下的 bash 程序来解释执行。BASH 这个程序一般是存放在 /bin 目录下。这一行的写法是固定的。


       第二行的 "# This is a ..." 就是 BASH 程序的注释,在 BASH 程序中从“#”号(没有“!”号)开始到行尾的部分均被看作是程序的注释,相当于C/C++语言中的“//”。
      第三行是为一个名称为 str 的变量赋值。
      第四行的 echo 语句的功能是把 echo 后面的字符串或变量的内容输出到标准输出中去。需要注意的是 BASH 中的绝大多数语句结尾处都没有分号。

 

      对于第三行,可能有人会问:在C/C++中,变量都属于某个类型,在这变量 str 的类型是什么呢?在 BASH 中变量定义是不需要的,没有 "int i" 这样的定义过程。如果想用一个变量,只要他没有在前面被定义过,就直接可以用,当然你使用该变量的第一条语句应该是对他赋初值了,如果你不赋初值也没关系,只不过该变量是空( 注意:是 NULL,不是 0 )。

 

 

       关于变量的使用,要注意以下几点:
 一,变量赋值时,“=”左右两边都不能有空格;
 二,BASH 中的语句结尾不需要分号(";");
 三,除了在变量赋值和在FOR循环语句头中,BASH 中的变量使用必须在变量前加"$"符号。 在比较详细的 bash 文档中,会规定使用变量要采用这样的形式:${STR},如果你的脚本出了莫名其妙的错误,不妨看看是不是这个问题造成的。

 

       BASH 中的变量既然不需要定义,也就没有类型一说,那是不是一个变量既可以存放整数,也可以存放字符串呢?对!
 一个变量即可以被定义为一个字符串,也可以被再定义为整数。如果对该变量进行整数运算,他就被解释为整数;如果对他进行字符串操作,他就被看作为一个字符串。

 

 

 

linux shell编程实例总结

1.查找当前目录中所有大于500M的文件,把这些文件名写到一个文本文件中,并统计其个数。 find ./ -size +500M -type f | tee file_list | wc -l 2...
  • lile269
  • lile269
  • 2011年08月04日 09:52
  • 12089

Linux下shell编程示例

什么是shell?Shell是一个命令解析器,是介于Linux操作系统的内核(kernel)与用户之间的一个绝缘层。shell脚本就是讲各类命令预先放入其中,方便一次性执行的一个程序文件,主要用于方便...

Linux Shell编程

零、shell中的内部变量: 1.    $?:    表示shell命令的返回值. 2.    $$:    表示当前shell的pid. 3.    $!:    最后一个放入后台作业的...

Linux Shell编程

简介Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问...
  • phiall
  • phiall
  • 2017年02月09日 09:03
  • 421

Linux程序设计(Linux shell编程的例子:总结)

各位看官们。。。“咱们今天还是接着上一回的内容列举具体的例子给大家。闲话休说,言归正转".啊?这 是谁呀,我还没有说,怎么把我想说的话都说出来了?看来台下的看官已经习惯我的风格了,哈哈。各位 看官...
  • talk_8
  • talk_8
  • 2015年05月01日 19:11
  • 1118

Linux Shell编程参考大全

本文记录Linux Shell编程中常用基本知识,方便快速入门以及查询使用。

Linux 下shell编程

什么是shell?Shell是一个命令解析器,是介于Linux操作系统的内核(kernel)与用户之间的一个绝缘层。shell脚本就是讲各类命令预先放入其中,方便一次性执行的一个程序文件,主要用于方便...

Linux_Shell Shell编程简介

这几天博主刻苦研究了下 Shell 编程,感觉 Shell 编程是一门非常强大的语言。 下面就Shell 编程的几个点进行下讲解: 0.Shell 编程的基本含义 (一个最简单的Shell 程...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

技术干货:Linux Shell 编程基础,看这一篇就够了!

技术干货:Linux Shell 编程基础,看这一篇就够了!
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux脚本(shell)编程(一) 简单入门HelloWorld
举报原因:
原因补充:

(最多只允许输入30个字)