注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 获取当前页面路径,实现权..
 帮助

Linux上的Shell之FAQ(四)


2007-11-25 18:43:26
 标签:Linux Shell FAQ   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://riser.blog.51cto.com/252482/52171
Shell中的语句链表是怎样的?
Shell中有一项比较特殊的用法,就是将多个语句串联在一起,这样可以使编程更为简洁。这些语句的串联通常是条件测试语句,一般用两个符号来组织它们:&&(表示与)和||(表示或)。&&链表可以连接一组命令,当&&前面的命令都成功时,才执行&&后面的命令。而||链表则当其中一条命令成功时,即退出。这两个符号甚至还可以链接语句集,只要你把这些语句用{}包围就好了。
 
Shell中怎么使用函数?
Shell中的函数定义很简单,基本格式为:
函数名()
{
  语句体
}
函数的使用需要注意的几点:
1)函数必须先定义才能调用
2)当函数调用的时候,原来脚本的参数,如$*,$@,$#,$1,$2等会被函数的相应参数所替换,函数调用完成,它们的值则回归到原值。
3)在函数内部,可以使用local来定义局部变量,该变量仅在函数内部有效。如果局部变量与全局变量同名,局部变量会在函数内部替换全局变量。
 
Shell中是否也有break命令,是否也有continue命令?
答案是肯定的,和其他编程语言一样,break用来直接跳出for, whileuntil循环,而continue用来跳出for, whileuntil的当前循环。
 
Shell中出现:在单独一行是什么意思?
有时我们可以看到,Shell脚本中出现一行仅包括一个冒号,它的意思其实很简单,这个冒号就等于布尔变量true。实际上,它运行的速度比true还快。
 
Shell中的.做什么用?
别小看这个.符号,它实际很有用处,这是Shell中一个特殊的命令符,用来在指定Shell脚本环境里执行命令(脚本)。这有点类似于C中的#include,它可以切换到某个脚本环境下来执行后续命令。其使用方法为:. ./script
 
Shelleval命令的作用?
eval命令用来求值。它会给出后面所接变量的值,这在多次赋值时很有用。
 
Shellexec命令的作用?
exec也是Shell中常用的命令,一般有两个作用:
1)用不同的程序名替换当前Shell脚本(主要功能)
2)修改当前文件描述符(次要功能)
 
关于exit的用法还有什么?
我们常见的exit用来退出脚本运行,exit 0表示成功退出,如果在exit后面加状态码1-125则表示有错误发生,这些错误可由程序指定,另外Shell还保留了一些状态码:
1126                       文件不能执行
2127                       命令未找到
3128及以上        收到一个信号
 
Shellexport命令的作用?
export命令的主要作用是导出环境变量,使得该环境变量能被其他脚本和程序所用。
 
Shellexpr命令的作用?
expr的主要作用是将其后的参数看作表达式来求值。它可以完成许多表达式的运算。

本文出自 “第二次启航” 博客,请务必保留此出处http://riser.blog.51cto.com/252482/52171





    文章评论
 
2007-11-25 20:14:07
没有接触过SQL,不过觉的SQL和C语言差不多啊
都是全局变量

2007-11-26 10:29:26
恩 编程的理念都是差不多的 不过还是感觉底层的比较难一些

 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: