当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: UNIX Shell? 程序设计 http://91mail.
 

 

    摘要:在 c++ 中,同一个翻译单位(.cpp文件)里的全局对象的初始化顺序是先定义的对象先初始化(同时也后析构),但 c++ 标准并没有规定不同翻译单位间全局对象的初始化顺序。按照这个分析,以下的代码可能工作,也可能不工作(cout 是 c++ 用于输出的全局对象,和我们自己的对象位于不同的翻译单位): class a { a() { cout << "a::a()"; } ~a() { cout << "......
    摘要:三、pki介绍   为解决internet的安全问题,世界各国对其进行了多年的研究,初步形成了一套完整的internet安全解决方案,即目前被广泛采用的pki体系结构,pki体系结构采用证书管理公钥,通过第三方的可信机构ca,把用户的公钥和用户的其他标识信息(如名称、e-mail、身份证号等)捆绑在一起,在internet网上验证用户的身份, pki体系结构把公钥密码和对称密码结合起来,在internet网上实现密钥的自动管理,保证网上数据的机密性、......


循序渐进UNIX--UNIX Shell 程序设计

unix shell? 程序设计

【相关文章:此Vector非彼Vector

http://91mail.51.net提供??需要完整的pdf文档请到http://91mail.51.net下载 【扩展阅读:模板——泛型和STL的基础

【扩展信息:MFC 全接触 (一)

??? unix? shell概述

??? shell启动及其命令

??? shell命令的集成

??? shell 变量

??? shell的控制结构

??? shell的运行环境

???

?第一节unix shell概述

*? ?什么是 shell

*? ?shell的双重特性

*? ?shell程序语言的特点

*? ?shell的版本

*? ?shell版本的选择

什么是 shell

?? shell就是unix提供用户的使用界面 。

shell处在内核与外层应用程序之间,起着

协调用户与系统的一致性、在用户与系统

之间进行交互的作用,即 shell为用户提供

了输入命令与参数并可得到命令执行结果

的环境。

shell的双重特性

?f? 命令解释程序(命令解释器)

??????? shell解释用户输入的命令行,提交系统内核

处理,并将结果返回给用户;

??? shell与unix命令一样都是实用程序,但有区

别。一旦用户注册到系统后, shell 就被系统装

入内存,并一直运行到用户退出系统之止;而一

般命令仅当被调用时,才由系统装入内存执行。

?f? 程序设计语言

??? shell本身也是一种可编程的程序设计语言。

6.1.1? shell的特点与主要版本?

???? shell允许通过编程来完成复杂的功能处理,

但其作为语言与高级语言比较具有不同的特点:

? shell是解释性的,多数高级语言是编译性的;

?· shell语言与高级语言处理的对象不同;

?¸ shell与系统有密切的关系;

?¹ shell易编写、调试、灵活性较强,但速度低;

?º shell作为命令级语言,命令组合功能很强。

shell的版本?

shell版本的选择

选择shell版本应考虑的因素:

?? bourne shell在任何一个unix系统平台上都存在,因此又成为标准shell;

?·? bourne shell家族有更丰富的程序语言,而 c shell家族有简单的程序接口;

?¸? shell各类变种功能越来越强大,但学习与使用也越难,因此可依据使用者编程经验来选择;

?¹ shell编程的脚本是个人使用还是公用,即要

考虑移植性问题。

6.1.2? shell程序示例

6.1.3 shell脚本的建立与执行

第2节 shell变量

*???? shell变量

*???? 用户自定义变量

*???? 位置变量

*???? 预定义的特殊变量

*???? 环境变量

*???? 变量替换

?f?? shell实际上是基于字符串的程序设计语言,

也具有变量。变量的名字必须以字母或下划线

开头,可以包括字母、数字与下划线。

?f?? shell变量能够而且只能存储正文字符串,

即它只有一种类型的变量——串变量。

?f?? 从赋值的形式上看,则可以分成四种类型

的变量或变量形式。

f? shell有两种变量:环境变量与临时变量。

环境变量:永久变量

???????????????????? 用户自定义变量

??????????????????????? 位置参数

?6.2.1? 用户定义的变量

f?语法格式:变量名=字符串

f?在程序中使用变量时,要在变量名前加一个符号“$”

?f赋值号“=”两边不允许有空白符;

??? nodehost="beijing.uucp ”

??? path=/bin:/usr/bin:/etc/bin

??? count=10

?f 允许多个赋值操作,按从右到左的顺序进行;

??? # a=$b? b=abc? c="ok"

??? # echo $a $b $c

?????????? abc abc ok

?

?f 当引用一个未设置的变量时,其隐含值为空;

??? # echo? "$mail is path of mailbox”

????????? is path of mailbox

f 如果用双引号“”将值括起来,则括起来的

字符串允许出现空格、制表符与换行符的特殊字

符,而且允许有变量替换。?

?? 例1:# mail=/var/mail/fk

???????????? # var="$mail is a path of mailbox"

???????????? # echo $var

???????? /var/mail/fk is a path of mailbox

??

例2:# str="this is \n a book"

???????????? # echo $str

???????????? this is

?????????????? a book

?f 如果用单引号‘’将值括起来,则括起来的字符串允许出现空格、制表符与换行符的特殊字符,但不允许有变量替换。?? 例1? # book="english book"

?????????? # msg=´$book´

?????????? # echo $msg

??????????? $book???

?? 例2?? # msg=´ today is \t sunday´

?????????? # echo $msg

?????????? today is???????? sunday


...   下一页
 ·自增操作的反汇编分析    »显示摘要«
    摘要:在考试或者做题的时候,经常遇到这类问题,出题的老师就是爱在这点上面钻牛脚尖,那就是自增自减操作的组合运算,我个人认为,考这样的题,没多大意思,因为各个编译器不同,出来的结果也不同,而且这样有一种误导,而失去了语言学习的本质,但是我们还是得面对……悲哀啊。下面我用汇编来分析一下这个例子: #include "stdio.h"int main(){ int i=0,n = 0; n = (++i)+(++i)+(+......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE