好友
阅读权限10
听众
最后登录1970-1-1
|
leel
发表于 2010-7-29 21:14
shell编程第一讲(灵魂の低调)
一.输出重定向
在开发shell脚本的过程中,你经常需要捕捉一个命令的输入并储存在文件中,这就是重 定向的过程。
例如 $date>now 将date的输出重定向到文件now。命令输出就不在
终端屏幕上,代之以输出到文件中,因此查看文件now, $ cat now
当然我们也可以把命令列表输出到重定向,如下所示:
date;uptime;who;>mylog
1.追加到文件
shell提供第二种输出重定向的方法,可以把输出追加到文件中,该方法操作符>>.
例如:通过使用如下命令你能防止每次将日期添加到mylog文件中时数据丢失:
date;uptime;who;>>mylog 看到了吧,这就是追加到文件的魅力所在。
2.将输出重定向到文件和屏幕
在某些情况下你需要将脚本的输出定向到一个文件和终端屏幕,假如我们要生成一个记录 其活动的日志文件,我们不能把他重定向到文件,因为那样没有交互性,所以要将命令的 输出重定向到屏幕,你可以使用tee命令,其基本语法:命令名|tee 文件名
例如:$date|tee now
会在终端屏幕上生成:2010年 07月 20日 星期五 09:00:18 CST
二.输入重定向
脚本为了执行正确的命令,经常需要向用户询问输入信息。因此就用到输入重定向。下面 我简单介绍下:
1.当前文档
输入重定向可以生成当前文档,例如你要打印号码,你可以先把号码输入到当前文档, 再打印当前文档即可,这比使用临时文件简单,因为临时文件既要被生成又要被删除。
形式:命令名 << delimiter
document
delimeter
记住delimeter必须是不包含空格或tab的单词
2.读取用户输入
shell脚本中完成的一个通常任务是提示用户输入信息病读取信息。
语法: read name(name是指定的变量名)
今天的到此结束,这些都是基础部分,大家好好练习掌握,明天讲文件描述符。 |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|