linux shell 快速入门小例子(shell十三问学习NOTE)

读CU论坛shell十三问后进行的几次小实验,备忘一下!

SHELL十三问地址:http://bbs.chinaunix.net/thread-218853-1-1.html

#!/bin/bash

function func_com()
{
        local a=1
        local b="2c3"
        echo ${a}b
        echo $ab
}

function func_array()
{
        echo "##### func_array #####"
        local PATH="/home/stone"
        source $PATH/include/tt.ini

        #echo $name

        local srand=(1 3 5 2)
        local srand_num=${#srand[*]}

        for((i=0;i<$srand_num;i++));do
        echo $((srand[i]+age))
        done
        echo "##### func_array #####"
}

function func_for()
{
        echo "##### func_for #####"
        local bin_path="/usr"
        local array=(2 3 5 7 9)
        local array_n=${#array[*]}

        for dir in $(ls $bin_path);
        do
        echo $dir
        done

        for ((i=0;i<$array_n;i++));
        do
        echo ${array[i]}
        done
        echo "##### func_for #####"
}

function func_getlen()
{
        echo "$#"
}

function func_param()
{
        echo "##### func_len \[email protected] #####"
        func_getlen     "[email protected]"
        echo "##### func_len \[email protected] #####"

        echo "##### func_len \$* #####"
        func_getlen     "$*"
        echo "##### func_len \$* #####"
}

function func_calc()
{
        echo "##### func_calc \$* #####"
        local a=$RANDOM
        local b=4
        local c=8

        d=$((a+b))
        echo $d
        e=`expr $a + 7`
        echo $e
        echo "##### func_calc \$* #####"
}

function func_exit()
{
        local str1="abc"
        local str2="def"
        echo $str1
        exit 0
        echo $str2
}

function func_if()
{
        local a=1
        local b=3
        local str="abc"

        if [ ! $a=1 ];then
                echo "equal"
        elif [[ $str="abc" ]]
        then
                echo "str equal"
        else
                echo "else"
        fi

}

function func_read()
{
        op=""

        while [[ $op != "q" ]]
        do
                read -p "input one word 'a,b,q'! " op
                case $op in
                a)
                echo "the word is $op";;
                b)
                echo "b";;
                q)
                exit;;
                *)
                echo "input err!"
                esac
        done
}

function func_getopt()
{
        ARGS="`getopt -u -o "ht:a:n:"  -l "help,time:,age:,number:" -- "[email protected]"`"
        [ $? -ne 0 ] && usage
        set -- ${ARGS}
        while [ true ] ;
        do
        case $1 in
                -h|--help)
                        usage
                        shift
                        ;;
                -t|--time)
                        echo "time is $2"
                        shift
                        ;;
                -a|--age)
                        echo "age is $2"
                        shift
                        ;;
                -n|--number)
                        echo "number is $2"
                        shift
                        ;;
                --)
                        shift
                        break
                        ;;
                *)
                        usage
                        ;;
        esac
        shift
        done

}

main()
{
        func_com
        #func_for
        #func_array
        #func_param 1 a 2 b
        #func_calc
        #func_exit
        #func_if
        #func_read
        #case while getopt
        #func_getopt -t 20150320 -a 25 --number 88
}

main
时间: 2024-08-11 06:30:52

linux shell 快速入门小例子(shell十三问学习NOTE)的相关文章

shell快速入门

本文下载 shell快速入门 参考文档 shell从入门到放弃(上) shell从入门到放弃(中) shell从入门到放弃(下) 朱双印的个人日志-shell shell的基本概念 shell是什么 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制

分享Linux系统快速入门法

相信看到这篇文章的你一定是想要学习Linux,或者已经在学习Linux的人了,那我们就可以一起探讨一下,学习Linux如何快速入门呢? 首先,希望大家弄清楚自己为什么要学习Linux,有的人是因为兴趣,有的人是因为Linux比较好找工作,兴趣驱使的那部分人找好方法学习Linux就差不多了.另一部分为了工作来学习Linux的人,不仅要找到合适自己的方法,而且还要更加努力,有自己的计划.但是无论是什么原因学习Linux的,方法还是差不多的,想要快速入门,首先你要选择一本基础书籍带你入门,开始的时候我

查看Linux服务器网卡流量小脚本shell和Python各一例

有时我们需要较为实时的查看服务器上的网卡流量,这里我写了两个小脚本,一个用shell(先写的,一次只能查看一个网卡),另一个用Python(后写的,一次可查看多个网卡).脚本中都用了while true"死循环",每隔10s从"/proc/net/dev"中取一次值并根据10s内的差值计算10s内的平均带宽:按ctrl+c停止执行.脚本兼容centos6和7 两个脚本都不太复杂,而且脚本中注释也比较细致,所以我就不过多解释脚本内容了.直接上图上脚本: shell版-

Bmob 开发Android程序快速入门--小demo

注册Bmob帐号 在网址栏输入www.bmob.cn或者在百度输入Bmob进行搜索,打开Bmob官网后,点击右上角的“注册”,在跳转页面填入你的姓名.邮箱.设置密码,确认后到你的邮箱激活Bmob账户,你就可以用Bmob轻松开发应用了. 网站后台创建应用 登录账号进入bmob后台后,点击后台界面左上角“创建应用”,在弹出框输入你应用的名称,然后确认,你就拥有了一个等待开发的应用. 获取应用密钥和下载SDK 选择你要开发的应用,点击该应用下方对应的“应用密钥” 在跳转页面,获取Application

struts2框架快速入门小案例

struts2快速入门: index.jsp------>HelloAction--------->hello.jsp struts2流程 1.导入jar包 struts2的目录结构: apps: 例子程序 docs:文档 lib:struts2框架所应用的jar以及插件包 src:源代码 core 它是struts2的源代码 xwork-core struts2底层使用了xwork,xwork的源代码 注意:在struts2开发,一般情况下最少导入的jar包,去apps下的struts2-b

freemarker入门小例子

我用freemarker做了两个小例子,主要的东西是:两个Test文件,一个Animal实体类,一个ftl模板---freemarker的模板,我使用maven做的java工程案例.主要结构内容如下图: 注意:需要导入freemarker的jar包: 1.首先我们先来了解一下freemarker的概念: freeMarker概述: FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写: FreeMarker被设计用来生成HTML Web页面,特别是基于MVC

02SpringMvc_springmvc快速入门小案例(XML版本)

这篇文章中,我们要写一个入门案例,去整体了解整个SpringMVC. 先给出整个项目的结构图: 第一步:创建springmvc-day01这么一个web应用 第二步:导入springioc,springweb , springmvc相关的jar包 第三步:在/WEB-INF/下创建web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.

一篇文章让你快速入门 学懂Shell脚本

Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合. Shell可以直接使用在win/Unix/Linux上面,并且可以调用大量系统内部的功能来解释执行程序,如果熟练掌握Shell脚本,可以让我们操作计算机变得更加轻松,也会节省很多时间. Shell应用场景 Shell能做什么 将一些复杂的命令简单化(平时我们提交一次github代码可能需要很多步骤,但是可以用Shell简化成一步) 可以写一些脚本自动实现

查看Linux服务器网卡流量小脚本shell

有时我们需要较为实时的查看服务器上的网卡流量,这里我写了个shell小脚本.脚本中用了while true"死循环",每隔10s从"/proc/net/dev"中取一次值并根据10s内的差值计算10s内的平均带宽:按ctrl+c停止执行.脚本兼容centos6和7,脚本不太复杂,而且脚本中注释也比较细致,所以我就不过多解释脚本内容了. 注:1kb=8字节,1Mb=1024kb #!/bin/sh   if [ "$1" = ""