zoukankan      html  css  js  c++  java
  • shell脚本

    一:基本写法样式

    (1):第一行

    !# --- 魔法字符,指定解释器,必写

    /bin/bash 表示使用指定路径下的bash解释器解释

    注意:要是路径不在/bin下怎么办,为了通用和兼容性,可以写成

    !# /bin/env bash

    (2):第二行

    一般写脚本的注释,解释里面的变量及方法

    (3):第三行

    脚本实现代码

    !# /bin/env bash
    
    # 脚本基本信息描述
    # Name:名字
    # Desc:描述
    # Path:存放路径
    # Useage:使用方法
    # Update:更新时间
    
    commands.................

     (4)例子

    任务:创建一个屏幕输出hello的脚本

    更改脚本的执行权限:更改后脚本颜色变为绿色。

    执行脚本

    #! /bin/bash
    # Name:print_hello
    # Path:/zyy/shell_test/shell01
    # Update:2020/5/20
    echo "hello"

    当前路径执行

    绝对路径执行

    关键点:

    通过指定的解释器能够排查脚本执行过程中哪一步出错。

    bash -x print_test.sh

    + echo hello 要执行的语句

    hello 表示执行的结果

    bash -n print_test.sh 检查脚本的语法问题

    (5)例子

    写脚本实现:删除/zyy/test/下的所有文件,然后在zyy/test/下创建三个目录,分别问dir1,dir2,dir3,然后拷贝/etc/hosts文件到dir1里面,最后打印"任务于2020年5月20日完成".

    #! /bin/env bash
    # Name:test01
    # Path:/zyy/shell_test/shell01
    # Upadate:2020/5/20
    rm -rf /zyy/test/*
    mkdir /zyy/test/dir{1..3}
    cp /etc/hosts /zyy/test/dir1
    echo "任务已经完成:$(date +'%F %T')"

    # TODO

  • 相关阅读:
    动态代理:JDK动态代理和CGLIB代理的区别
    关于国密算法 SM1,SM2,SM3,SM4 的笔记
    加密算法比较3DES AES RSA ECC MD5 SHA1等
    通过mybatis向数据库中插入日期数据
    mapreduce流程中的几个关键点
    MapReduce二次排序
    Hadoop自定义分组Group
    编译hadoop2.6.0
    ERROR [org.apache.hadoop.security.UserGroupInformation]
    Java集合分组
  • 原文地址:https://www.cnblogs.com/meloncodezhang/p/12920688.html
Copyright © 2011-2022 走看看