Chinaunix首页 | 论坛 | 博客
  • 博客访问: 86129
  • 博文数量: 26
  • 博客积分: 90
  • 博客等级: 民兵
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-02 00:25
文章分类
文章存档

2012年(16)

2011年(10)

我的朋友

分类:

2012-02-21 22:20:37

原文地址:shell学习 作者:

    每一个shell Script执行时,系统默认会开启3个标准的文件,分别是,标准输入(stdin)、标准输出(stdout)、标准错误(stderr).
    Script默认会由标准输入读取数据,通常指键盘;由标准输出显示执行结果,通常是指屏幕;若发生错误,则由标准错误显示信息,通常也是屏幕.
    系统开启这3个标准文件时,是以文件代码做连接.标准输入的文件代码为0,标准输出的文件代码是1,标准错误的文件代码是2.我们称这3个文件为标准I/0(Input和Output)
①.>输出转向:
  1. echo 'Hello World!' > hi.txt

通过输出转向,将echo显示的内容保存到hi.txt文件内.

②.>>转向附加

  1. echo 'Hello World Again' >> hi.txt

通过转向附加,将echo显示的内容附加到hi.txt文件内.

cat hi.txt

  1. Hello World!
  2. Hello World! Again!

③.<转向输入

  1. wc -l < anaconda-ks.cfg

通过以上命令,可统计anaconda-ks.cfg文件行数.

④.|管道

将一个程序的输出,变成另一个程序的输入.

  1. cat anaconda-ks.cfg|sort > aa
  2. 查看anaconda-ks.cfg文件内容,通过管道传送到sort命令的输入进行排序,最后将结果转向输出到aa文件.

⑤.&后台执行程序

  1. ./my-work.sh &

执行bash Script的方法:

  1. ①.子Shell执行方法
  2. ./test.sh
  3. #在本目录中执行
  4. /usr/local/test.sh
  5. #绝对路径的方式执行Script
  6. sh test.sh
  7. bash test.sh
  8. 直接使用bash或sh来执行Script
  9. ②.在当前shell中执行
  10. . /usr/local/test.sh或者 source /usr/local/test.sh

Bash Script排错的方法

  1. Bash -v test.sh
  2. #检查语法是否错误
  3. Bash -n test.sh
  4. #Script 全部的程序行,以供查看
  5. Bash -x test.sh
  6. #追踪bash执行过程
阅读(2383) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~