快速业务通道

(chenfeiyao8)Linux的shell编程2

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-25
终止.

  另外,在trap语句中,单引号和双引号是不同的,当shell程序第一次碰到trap语句时,将把commands中的命令扫描一遍.此时若commands是用单引号括起来的话,那么shell不会对commands中的变量和命令进行替换,否则commands中的变量和命令将用当时具体的值来替换.

  五、运行shell程序的方法

  用户可以用任何编辑程序来编写shell程序.shell程序是解释执行的,不需要编译装配成目标程序,按照shell编程的惯例,以bash为例,程序的第一行一般为“#!/bin/bash”,其中#表示该行是注释,叹号“!”告诉shell运行叹号之后的命令并用文件的其余部分作为输入,也就是运行/bin/bash并让/bin/bash去执行shell程序的内容.

  执行shell程序的方法有三种:

  (1)sh shell程序文件名

  这种方法的命令格式为:

  bash shell程序文件名

  这实际上是调用一个新的bash命令解释程序,而把shell程序文件名作为参数传递给它.新启动的shell将去读指定的文件,执行文件中列出的命令,当所有的命令都执行完结束.该方法的优点是可以利用shell调试功能.

  (2)sh

  格式为:

  bash

  这种方式就是利用输入重定向,使shell命令解释程序的输入取自指定的程序文件.

  (3)用chmod命令使shell程序成为可执行的

  一个文件能否运行取决于该文件的内容本身可执行且该文件具有执行权.对于shell程序,当用编辑器生成一个文件时,系统赋予的许可权限都是644(rw-r-r--),因此,当用户需要运行这个文件时,只需要直接键入文件名即可.

  在这三种运行shell程序的方法中,最好按下面的方式选择:当刚建立一个shell程序,对它的正确性还没有把握时,应当使用第一种方式进行调试.当一个shell程序已经调试好时,应使用第三种方式把它固定下来,以后只要键入相应的文件名即可,并可被另一个程序所调用.



--------------------------------------------------------------------------------

(chenfeiyao8)Linux的shell编程2

http://chenfeiyao8.blog.51cto.com

--------------------------------------------------------------------------------
http://tech.sina.com.cn 2001/02/13 13:45 软件世界 敬茂华
  六、bash程序的调试

  在编程过程中难免会出错,有的时候,调试程序比编写程序花费的时间还要多,shell程序同样如此.

  shell程序的调试主要是利用bash命令解释程序的选择项.调用bash的形式是:

  6.read

  命令格式:

  read变量名表

  功能:从标准输入设备读入一行,分解成若干字,赋值给shell程序内部定义的变量.

  7.shift语句

  功能:shift语句按如下方式重新命名所有的位置参数变量:$2成为$1,$3成为$2……在程序中每使用一次shift语句,都使所有的位置参数依次向左移动一个位置,并使位置参数“$#”减一,直到减到0.

  8.wait

  功能:是shell等待在后台启动的所有子进程结束.Wait的返回值总是真.

  9.exit

  功能:退出shell程序.在exit之后可有选择地指定一个数字作为返回状态.

  10.“.”(点)

  命令格式:. Shell程序文件名

  功能:使shell读入指定的shell程序文件并依次执行文件中的所有语句.

http://chenfeiyao8.blog.51cto.com 作者:chenfeiyao8

本文出自 “chenfeiyao8” 博客,请务必保留此出处http://chenfeiyao8.blog.51cto.com/3851621/704970

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号