需求一:写一个脚本
  1.设定变量FILE的值为/etc/passwd
  2.依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么
  形如:(提示:LINE=`wc -l /etc/passwd | cut -d" " -f1`)
  Hello,root,your UID is 0.
  3.统计一个有多少个用户

#!/bin/bash
           file="/etc/passwd"
           LINES=`wc -l $file | cut -d" " -f1`
            $LINES`;do
           userid=`head -$I $file | tail - |cut -d: -f3`
           username=`head -$I $file | tail - |cut -d: -f1`
           echo "hello $username,your UID is $userid"
           done
           echo "there are $LINES users"

答案一:

 #!/bin/bash
            file=/etc/passwd
            let num=
            for I in `cat $file`;do
            username=`echo "$I" | cut -d: -f1`
            userid=`echo "$I" | cut -d: -f3`
            echo "Hello,$username,your UID is $userid"
            num=$[$num+]
            done
            echo "there are $num users"

答案二:

需求二:写一个脚本
1.切换工作目录至/var
2.依次向/var目录中的每个文件或子目录问好,形如:
(提示:for FILE in /var/*;或for FILE in `ls /var`;)
Hello,log
3.统计/var目录下共有多个文件,并显示出来

 #!/bin/bash
          cd /var
          let num=
          for I in `ls /var/*`;do
          echo "hello $I"
          num=$[$num+1]
          done
          echo "the number of files is $num"

答案:

练习三:写一个脚本
      1.设定变量file的值为/etc/passwd
      2.使用循环读取文件/etc/passwd的第2,4,6,10,13,15行,并显示其内容
      3.把这些行保存至/tmp/mypasswd文件中

 #!/bin/bash
        file="/etc/passwd"
             ;do
        exec >/tmp/mypasswd
        line=`head -$I $file | tail -`
        echo "$line"
        echo
        exec >&-
        done

答案:

练习四:写一个脚本
       传递两个整数给脚本,让脚本分别计算并显示这两个整数的和,差,积,商
 #!/bin/bash
                     echo "first number $1"  (表示输出第一个数)
                     echo "second number $2" (表示输出第二个数)
                     echo " $(($1+$2))"      (输出两数之和)
                     echo "$[$1-$2]"         (输出两数之差)
                     echo "$[$1*$2]"         (输出两数之积)
                     echo "$[$1/$2]"         (输出两数之商)
                     :wq                    (表示保存并退出vi编辑器)
                     chmod +x test.sh       (给test.sh执行的权限)
                     ./test.sh            (传递两个参数并执行脚本 

答案

shell脚本需求的更多相关文章

  1. shell脚本案例分享 - 业务系统日志自定义保留或删除需求

    需求说明:  线上某些业务系统的日志不定期产生, 有的每天产生, 有的好几天才产生, 因为系统只有在用的时候才产生日志,日志文件均存放在以当天日期命名的目录下. 当日志目录越来越多时就需要处理, 由此 ...

  2. shell脚本每天自动备份mysql数据库

    一.mysql提供了一个mysqldump的工具可以方便的导出导入数据库信息: 二.使用命令行shell测试执行mysqldump,理解必备的参数,查看生成的sql备份文件是否符合需求: /usr/b ...

  3. 常用的主机监控Shell脚本

    最近时不时有朋友问我关于服务器监控方面的问题,问常用的服务器监控除了用开源软件,比如:cacti,nagios监控外是否可以自己写shell脚本呢?根据自己的需求写出的shell脚本更能满足需求,更能 ...

  4. shell脚本调试之工具——bashdb

    bash是Unix/Linux操作系统最常用的shell之一,它非常灵活,和awk.c++配合起来异常强大 以下使用一个测试脚本来说明使用bash调试的方法 test.sh #!/bin/bash e ...

  5. 如何进行shell脚本正确性测试

    在实际工作中,需要对shell脚本进行正确性测试. 如何用最快最有效的方式进行测试? 很多开发的习惯是,二话不说,写完/拿到,就跑一把,看看输入,输出,想要的操作是否完成,也就过了. 其实这是十分不严 ...

  6. shell脚本循环执行mysql语句

    参考资料:Shell脚本中执行mysql语句 需求:数据库里有张数据表存储的是用户对电影的评价(user_id movie_id rating time),但是我现在要每部电影的总评分. 解决方法: ...

  7. Linux Shell脚本编程的注意事项

    Linux下(Shell脚本 http://www.jbxue.com/jb/shell/)编程的一些注意事项,如编程风格.命名风格等. 一.常用技巧 ssh user@server bash < ...

  8. shell脚本中一些特殊符号

    在shell中常用的特殊符号罗列如下: # ;   ;; . , / \\ 'string'| !   $   ${}   $? $$   $* \"string\"* **   ...

  9. 【Shell脚本学习3】什么时候使用Shell

    因为Shell似乎是各UNIX系统之间通用的功能,并且经过了POSIX的标准化.因此,Shell脚本只要“用心写”一次,即可应用到很多系统上.因此,之所以要使用Shell脚本是基于: 简单性:Shel ...

随机推荐

  1. CentOS6.5安装testlink1.9.14

    前提条件:准备一台CentOS6.5虚拟机,配置好IP,关闭iptables和selinux. 这里提供上我的云盘软件,可以去这里下载:http://pan.baidu.com/s/1qXymele ...

  2. ios UITableView 搜索

    自己实现 UITableView 搜索,相对于使用 UISearchDisplayController 来说自己写稍微麻烦了那么一点点,但是更加灵活.主要就是用一个字段区分出当前是搜索还是非搜索,然后 ...

  3. 导入数据到HBase的方式选择

    Choosing the Right Import Method If the data is already in an HBase table: To move the data from one ...

  4. 【CSS】 布局之浮动float和绝对定位absolute的选择

    浮动float: 浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样.(W3C) 绝对定位 ...

  5. mysql 远程链接问题

    问题描述: 从一台linux远程连接另一台linux上的MySQL, 出现ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.x ...

  6. python-爬虫之requests模块介绍(登陆github)

    介绍 使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3) 注意 requests库发送请求将网页内容下载下来以后 ...

  7. 架构实战项目心得(五):mysql安装

    1.  yum安装mysql yum -y install mysql-server 2.  启动mysql服务 启动mysql:service mysqld start 查看mysql的状态:ser ...

  8. .netCore2.0 依赖注入

    依赖注入(ID)是一种实现对象及其合作者或者依赖想之间松散耦合的技术对于传统的方法来说,获取类的方法通常用new如下 public class DIController : Controller { ...

  9. 第六章使用java实现面向对象-集合框架

    一:接口:即表示集合的抽象数据类型. 实现:即集合框架中接口的实现. 算法:在一个实现了某个集合框架中的接口的对象身上完成某种有用的计算的方法,例如查找. 排序等. Collection 接口存储一组 ...

  10. JQuery对数组的一些操作总结

    JQuery对数组的处理非常便捷并且功能强大齐全,一步到位的封装了很多原生js数组不能企及的功能.下面来看看JQuery数组的强大之处在哪. $.each(array, [callback]) 遍历 ...