• 04_大数据_shell编程增强


    Shell 编程增强

    Shell编程一般指编写shell脚本。

    1、基本语法:

    使用vi编辑器新建一个文件hello.sh

    #!/bin/bash
    echo "Hello World!"
    

    执行方式:

    方式1:

    sh hello.sh
    

    方式2:

    chmod +x ./hello.sh 	#使脚本具有执行权限
    
    ./hello.sh	 #执行脚本
    

    2、变量:

    (1)局部变量

    #!/bin/bash
    str="hello"
    echo ${str}world
    

    (2)环境变量

    echo $PATH
    echo $HOME
    
    # (1)在/etc/profile文件下,定义环境变量:
    export MYENV=/root/lib/demo
    # (2)生效环境变量
    source /etc/profile
    # (3)在命令行里输出,查看是否存在自身所定义的环境变量
    env
    

    3、特殊字符

    $# 传递脚本的参数个数
    $* 以一个单字符串显示所有向脚本传递的参数。
    $$ 脚本运行的当前进程ID号。
    $! 后台运行的最后一个进程的ID号。
    $@ 与$*相同。但是使用时加引号,并在引号中返回每个参数。
    $? 显示最后命令的退出状态,0表示没有错误,其他任何值表明有错误。
    #!/bin/bash
    echo "第一个参数为:$1"
    echo "参数个数为:$#"
    echo "传递的参数作为一个字符串显示:$*"
    

    执行:./test.sh 1 2 3

    4、运算符

    #!/bin/bash
    a=1;
    b=2;
    echo 'expr $a + $b';
    echo $((a + b));
    echo $[a + b];
    

    5、if 语句

    #!/bin/bash
    read -p "please input your name:" NAME ##read 命令用于从控制台输入数据
    ## printf '%s
    ' $NAME
    if [ $NAME = root ]
            then
                    echo "hello ${NAME}, welcome !"
    
            elif [ $NAME = itcast ]
            then
                    echo "hello ${NAME}, welcome !"
    
            else
                    echo "Get out Please!"
    fi
    

    6、for语句

    方式1:

    #!/bin/bash
    for N in 1 2 3
    do
    	echo $N
    done
    

    方式2:

    #!/bin/bash
    for ((i = 0; i <= 5; i++))
     do
     	echo "welcome $i times"
     done
    

    7、函数

    #!/bin/bash
    
    funWithReturn(){
    echo "这个函数会对输入的两个数进行相加运算..."
    echo "第一个数字:"
    read aNum
    echo "第二个数字:"
    read anotherNum
    echo "两个数字分别为 $aNum 和 $anotherNum !"
    return $(($aNum+$anotherNum))
    }
    funWithReturn
    echo "输入的两个数字之和为$?!"
    
  • 相关阅读:
    l1-013
    将博客搬至CSDN
    Educational Codeforces Round 25
    大组合数取余模板【Lucas定理】
    Exams(二分求左界+贪心)
    Cutting (暴力 + 滚动哈希判字符串匹配)
    Cubes(DFS+剪枝)
    Codeforces Round #409 (Div. 2)
    【复习挖坑】dp + 图
    n & n-1 和 n & -n
  • 原文地址:https://www.cnblogs.com/wylym/p/14484523.html
Copyright © 2020-2023  润新知