leel 发表于 2010-7-29 21:14

shell编程第一讲(原创)

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是指定的变量名)
      今天的到此结束,这些都是基础部分,大家好好练习掌握,明天讲文件描述符。

tysan 发表于 2010-7-29 21:20

是那种语言的shell?

是昔流芳 发表于 2010-7-29 21:23

哦,你是卡卡的论坛实习生吧,不错

小Z 发表于 2010-7-29 21:36

这个是原创区啊

love、you 发表于 2010-7-29 21:50

真的是你写的么

leel 发表于 2010-7-29 22:12

回复 5# love、you


    当然啊!linux操作系统下的shell

datochan 发表于 2010-7-29 22:35

恩,我看了下你发出来的4讲帖子,应该是原创……

你是第二个在本版块开专题的,我真的很感谢你。
我希望你能坚持下去, 如果可以的话,我建议你能写一个导航帖子,我给你置顶~
另外
    希望你没发一个帖子,都能讲一个专题,这样我可以根据你帖子的质量给你评精华,如果像这样很琐碎的帖子,我实在是很难办,评精华不值,不评精华又说不过去,毕竟在这个版块很少有原创……

希望LZ能理解,并根据情况修改自己的帖子,如果有什么问题,可以给我发论坛短消息~

leel 发表于 2010-7-31 11:47

回复 7# bester


    版主,希望你把我的8个帖子组合在一起,弄个链接,希望更多的会员学到,后面还有几讲,我准备回学校后继续更新,谢谢

Allyvin 发表于 2013-5-31 10:28

linux 爱好者谢谢分享
页: [1]
查看完整版本: shell编程第一讲(原创)