Shell脚本的编写及重定向输出的应用

本文通过5个实例详细介绍了Shell脚本的编写及应用,包括编写简单的问候脚本、输出系统信息、重定向输出、条件判断脚本和批量添加用户脚本。每个案例都包含了问题描述、解决方案和具体步骤,帮助读者深入理解Shell脚本的使用和技巧。

1 案例1:Shell脚本的编写及测试

1.1 问题

本例要求两个简单的Shell脚本程序,任务目标如下:

  1. 编写一个面世问候 /root/helloworld.sh 脚本,执行后显示出一段话“Hello World!!”
  2. 编写一个能输出系统信息的 /root/sysinfo 脚本,执行后依次输出当前红帽系统的版本信息、当前使用的内核版本、当前系统的主机名

1.2 方案

规范Shell脚本的一般组成:

  1. #! 环境声明(Sha-Bang)
  2. # 注释文本
  3. 可执行代码

1.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:编写helloworld.sh问候脚本

1)编写脚本代码

  1. [root@server0 ~]# vim /root/helloworld.sh
  2. #!/bin/bash
  3. echo "Hello World !!"

2)添加x执行权限

 
   
  1. [root@server0 ~]# chmod +x /root/helloworld.sh

3)运行脚本测试

  1. [root@server0 ~]# /root/helloworld.sh
  2. Hello World !!

步骤二:编写sysinfo系统信息报告脚本

1)编写脚本代码

 
  
  1. [root@server0 ~]# vim /root/sysinfo
  2. #!/bin/bash
  3. cat /etc/redhat-release
  4. uname -r
  5. hostname

2)添加x执行权限

  1. [root@server0 ~]# chmod +x /root/sysinfo

3)运行脚本测试

 
  
  1. [root@server0 ~]# /root/sysinfo
  2. Red Hat Enterprise Linux Server release 7.0 (Maipo)
  3. 3.10.0-123.el7.x86_64
  4. server0.example.com

2 案例2:重定向输出的应用

2.1 问题

本例要求编写一个脚本 /root/out.sh,功能特性如下:

  1. 执行此脚本显示 I love study !!
  2. 执行 /root/out.sh 2> err.log 应该没有显示,但是查看 err.log 文件的内容为 I love study !!

2.2 方案

屏幕输出文本的类别:

  • 标准输出(1):命令行执行正常的显示结果
  • 标准错误(2):命令行执行出错或异常时的显示结果

将屏幕显示信息保存到文件:

  • cmd > file 、 cmd >> file
  • cmd 2> file 、 cmd 2>> file
  • cmd &> file 、cmd 2> file 1>&2

使用1>&2或>&2操作,可以将命令行的标准输出编程标准错误。

2.3 步骤

实现此案例需要按照如下步骤进行。

步骤:编写out.sh输出测试脚本

1)编写脚本代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值