zoukankan      html  css  js  c++  java
  • 【原】Shell脚本-判断文件有无进而复制

    2016年7月5日某同学在群上求助要编一个判断文件或目录在某路径下有无进而有的就复制粘贴到另一路径下,无的则将代码中断(不往下执行命令)的脚本。逐一完善。模板如下(生产环境可用到路径环境变量)

    ---------------------------------------------------脚本分割线-------------------------------------------
    [root@localhost sh]# vim efile.sh
    #! /bin/bash

    #2016年7月5日某同学在群上求助要编一个判断文件或目录在某路径下有无
    #进而有的就复制粘贴到另一路径下,无的则将代码中断(不往下执行命令)的脚本。
    #逐一完善。模板如下(生产环境可用到路径环境变量)

    NAME=$1

    #$1为脚本输入的第一个参数,也就是设想运行此脚本时,
    #后面直接会跟一个文件或目录名

    if [ -e /wwwroot/$NAME ] ; then
    cp -r -v /wwwroot/$NAME /bak/
    else
    echo "没有此文件或目录,脚本结束"
    exit
    fi

    #-e 条件为判断文件或目录有没有存在系统之中,有则成立,无则跳到else
    #cp -r 是递归复制目录,不加-r的话会在复制目录时出错
    #cp -v 为显示详细复制过程,我觉得应该给点反馈操作者故加上去
    #最后的exit为中断代码,如此下面的命令就不会执行了。

    echo "测试中断代码是否实现"
    echo "进行了复制粘贴操作"
    ----------------------------------------------操作分割线-----------------------------
    [root@localhost sh]# sh efile.sh test.txt
    /wwwroot/test.txt -> /bak/test.txt
    测试中断代码是否实现
    进行了复制粘贴操作
    [root@localhost sh]# sh efile.sh data
    没有此文件或目录,脚本结束
    [root@localhost sh]# sh efile.sh date
    /wwwroot/date -> /bak/date
    测试中断代码是否实现
    进行了复制粘贴操作
    ----------------------------------------操作证实脚本有效----------------------------

    by:铁乐猫
    2016-7-6

  • 相关阅读:
    mt7601u: probe of xxxx failed with error -2
    error: 'ENOSYS' undeclared (first use in this function)
    backports移植rtlwifi驱动
    Buildroot 指定内核版本
    Buildroot 使用默认配置
    Uncaught TypeError: jQuery.i18n.browserLang is not a function
    Web APi之控制器创建过程及原理解析(八)
    Web APi之手动实现JSONP或安装配置Cors跨域(七)
    Web APi之Web Host消息处理管道(六)
    Web APi之消息处理管道(五)
  • 原文地址:https://www.cnblogs.com/tielemao/p/5863606.html
Copyright © 2011-2022 走看看