shell 编程- shell 编程简介介绍 shell 编程目标: 完成这一章,你能做以下事情: 写出简单的 shell 程序通过环境变量传递参数给 shell 程序通过位置参数传递参数给 shell 程序使用特殊 shell 变量, *和# 使用 shift 和 read 命令 shell 编程概述 shell 程序是一个包含 UNIX 命令的普通文件。这个文件的许可权限至少应该为可读和可执行。在 shell 提示符下键入文件名就可执行 shell 程序。 shell 程序可以通过三种方式接受数据: -环境变量-命令行参数-用户的输入 shell 是一个命令解释器,它会解释并执行命令提示符下输入的命令。但是,你可能想要多次执行一组命令, shell 提供了一种功能, 让你将这组命令存放在一个文件中, 然后你可以象 unix 系统提供的其他程序一样执行这个文件,这个命令文件就叫做 shell 程序或者 shell 脚本。当你运行这个文件, 它会象你在命令行输入这些命令一样地执行这些命令。为了让 shell 能读取并且执行你的 shell 程序, shell 脚本的文件权限必须被设置为可读和可执行。为了让 shell 可以找到你的程序, 你可以选择输入完全路径名,或者将这个脚本的路径放在于你的 PATH 环境变量指定的路径列表中。许多的用户会在他们的 HOME 目录下创建一个 bin 目录来存放他们自己开发的 script , 然后将$HOME/bin 加入到他们的 PATH 环境变量中。你可以写出非常复杂的 shell 脚本, 因为 shell 脚本支持变量、命令行参数、交互式输入、 tests ( 判断))、 branches (分支) ,和 loops (循环)等复杂的结构。 shell 程序举例$ cat myprog #this is the program myprog date ls–F$ myprog 要创建一个 shell 程序,考虑进行以下步骤: $ vi myprog 一个包含 shell 命令的程序。# this is the program myprog date ls–F$ chmod +x myprog 增加文件的执行模式$ myprog Thu Jul 11 11:10 EDT 1994 F1 f2 memo/ myprog* 首先使用一个文本编辑器创建一个 shell 程序 myprog 。在程序执行之前,这个文件必须被赋予可执行的权限。然后在命令提示符下输入这个程序名,如上例所示, 当 myprog 执行的时候, 一个子 shell 会被创建。这个子 shell 会从 shell 程序文件 mypro g 读取输入而不是从命令行读取输入, 这个 shell 中的每个命令的执行都会创建一个子 shell 。一旦所有的命令都被执行, 所有的子 shel l 会中止, 然后会返回到原始的父 shell 。 Shell 程序中的注释: 推荐在 shell 程序中提供注释语句来注明程序的内容。注释由一个# 符号开始, Shel l 不会去执行任何在#之后的语句。# 能够出现在命令行的任何位置。注意:你不可以给 shell 程序取名为 test 因为 test 是一个内部的 shell 命令。 传递数据
shell编程-shell编程简介 来自淘豆网www.taodocs.com转载请标明出处.