zoukankan      html  css  js  c++  java
  • shell脚本快速入门

    一、变量赋值

    #!/bin/bash
    a="hello world" # = 两侧不能有空格!
    echo "a is $a"
    unset a
    echo "this is ${a}nd"           #变量最好用 {} 扩起来,避免混淆
    declare -i num1=10
    declare -i num2=20
    declare -i num3=$num1+$num2

    比较重要的命令:

    ls  wc cp mv grep cut cat file read sort uniq expr find tee basename  dirname head tail sed awk 

    二、流程控制

    1.参数控制

    #!/bin/bash
    echo $1 $2           #参数名
    echo $0            #程序名
    echo $@            #在一个变量中列出所有参数 $*
    echo $#            #参数个数
    echo $$            #进程号
    echo $?            #上一条单独命令的退出状态  

    2.if 循环(各参数一定要用空格隔开!!)

    #!/bin/bash
    for day in 1 2 3 4 5 6 7
    do
    if [ $day = 6 -o $day = 7 ]
    then
    echo "$day is a nice day"
    elif [ $day = 1 ]
    then
    echo "starting to work..."
    fi
    done

    3.case

    read -p 'Please input a num: ' num
    case $num in
    1)
    echo 1;;
    2)
    echo 2;;
    3 | 4)
    echo 3 or 4;;
    *)
    echo 'other';;
    esac

    4.for

    #!/bin/bash
    read dir
    if [ -d "$dir" -a -r "$dir" ]; then
    file=$(ls $dir)

    for filename in $file
    do
    if [ -u "$dir/$filename" ]; then
    echo "$filename has uid"
    ls -l "$dir/$filename"
    fi
    done
    else
    echo "sorry $dir does not exist or could not read"
    fi

    此例可输入: /usr/bin

    5.while

    #!/bin/bash
    read str
    while [ "$str" != 'ubuntu' ]
    do
    echo 'not right'
    read str
    done
    echo "you have guessed it !"

    6.until 

    #!/bin/bash
    read str
    until [ $str = 'quit' ]
    do
    echo 'keep on'
    read str
    done
    printf "you have entered quit !\n"

      

  • 相关阅读:
    python使用suds来调用webservice
    第二章 :初识MySQL
    什么是端口概念?
    数据库中的五种约束
    MySQL基本概念以及简单操作
    Java 持久化操作之 --XML
    Soso(嗖嗖)移动 java 项目
    Java多线程笔记总结
    java中代码的注释和快捷
    java oop 单列 双列 集合, 迭代器 的使用和说明
  • 原文地址:https://www.cnblogs.com/xiangzi888/p/2193700.html
Copyright © 2011-2022 走看看