shell 实用脚本
功能 将当前目录下文件拷贝至另一目录下,且拷贝前先备份
#!/bin/sh
#脚本功能
#覆盖文件前先备份
cfsuffix=$(date +%Y%m%d); #备份文件后缀
if [ $# -lt ]; then #输入参数说明
echo "error...need args\n"
echo "eg:path1 path2"
echo "path1 files backup and copy to path2"
exit
else
path1=$;
path2=$;
echo $path1;
echo $path2;
#if [ [ -d "$path1" ] && [ -d "$path2" ] ]; then
if [ -d "$path1" -a -d "$path2" ]; then
ls $path1 | awk -F'[ ]' '{print $1}' | while read filename
do
sfile=$path1'/'$filename; #源文件
pfile=$path2'/'$filename; #需备份文件
cfile=$path2'/'$filename'.'$cfsuffix; #备份后文件
if [ -f $sfile ]; then
if [ -f $pfile ]; then
cp $pfile $cfile && a= || a=;
if [ $a -eq ]; then
echo $filename "backup success!";
cp $sfile $path2;
else
echo $filename "backup error!"
fi
else
echo $pfile "not find!";
cp $sfile $path2;
fi
fi
done
else
echo "error...args path not find!";
fi
fi
shell 实用脚本的更多相关文章
- shell 实用脚本2
脚本功能 拷贝文件夹 及 子文件夹内文件 到 对应的 文件结构下 ,且拷贝前先进行备份 #!/bin/sh #create by lizr -- #脚本功能 #覆盖文件前先备份 cfsuffix=$ ...
- shell及脚本4——shell script
一.格式 1.1 开头 必须以 "# !/bin/bash" 开头,告诉系统这是一个bash shell脚本.注意#与!中间有空格. 二.语法 2.1 数值运算 可以用decla ...
- 【Telnet】使用Telnet协议连接到远程Shell执行脚本
介绍 本文介绍如何通过Telnet协议连接到远程Shell,执行脚本,并获取执行结果: 相关文章: <[Jsch]使用SSH协议连接到远程Shell执行脚本>http://www.cnbl ...
- QL Server 实用脚本
use MyFirstDB; -- 主要内容 -- SQL Server 实用脚本 -- 1.case语句 -- 2.子查询 -- 3.连接查询 -- 4.脚本变量与流程控制(选择与循环等) -- 5 ...
- shell自动计算脚本
shell自动计算脚本 #!/bin/bash echo $(($)) [root@bogon ~]# sh b.sh 123+123246 let用户声明这个操作是要计算,后者的效率更高 (expr ...
- Shell菜单脚本
今天在这儿给大家分享一个我简单编写的Shell菜单脚本,傻瓜式的人机交互,人人都可以操作linux. #!/bin/sh #Shell菜单演示 function menu () { cat <& ...
- shell常见脚本30例
shell常见脚本30例 author:headsen chen 2017-10-19 10:12:12 本文原素材出自网上,特此申明.有些地方加入我自己的改动 常见的30例shell脚本 1.用 ...
- shell常用脚本
shell常用脚本 author:headsen chen 2017-10-17 15:36:17 个人原创,转载请注明,否则依法追究法律责任 1,vim name.grep.sh 2,cat ...
- 一篇关于Maven项目的jar包Shell启动脚本
使用Maven作为项目jar包依赖的管理,常常会遇到命令行启动,笔者也是哥菜鸟,在做微服务,以及服务器端开发的过程中,常常会遇到项目的启动需要使用main方法,笔者潜心的研究了很多博客,发现大多写的都 ...
随机推荐
- vs code的local history插件
使用vs code来编写前端代码,内存的使用比webstrom要少很多. vs code可以下载中文及debug插件,使用起来会方便很多. vs code不像idea或者webstrom有local ...
- Linux系统格式化命令mke2fs命令简析
1.mke2fs配置文件: # vim /etc/mke2fs.conf [defaults] base_features = sparse_super,filetype,resize_inode,d ...
- 串口使用和CSerial类
1 串口通信的基本原理 串口通信中无论是写入串口还是读取串口,都是对缓冲区操作的.可以理解为写串口就是向输出缓冲区写入内容,读取串口就是从输入串口缓冲区读取内容.但是何时打开串口,何时发送数据,何时接 ...
- Oracle 编写自定义函数
CREATE OR REPLACE function testAdd(js1 in number, js2 in number) return number is v_hj number; v_h ; ...
- 【DSP开发】【计算机视觉】EMCV:可在DSP上运行的OpenCV
EMCV:可在DSP上运行的OpenCV EMCV项目主页: http://sf.net/projects/emcv EMCV全称为Embedded Computer Vision Library,是 ...
- 【Python开发】Python中的class继承
继承是面向对象的重要特征之一,继承是两个类或者多个类之间的父子关系,子进程继承了父进程的所有公有实例变量和方法.继承实现了代码的重用.重用已经存在的数据和行为,减少代码的重新编写,python在类名后 ...
- C学习笔记-makefile
除非最简单的项目,任何一个商业项目都会包含多个源代码,而且在编译的时候会有很长很复杂的指令,为了编译的简单可行,makefile由此而生,在编译时候直接输入make便会按照makefile里面的规则编 ...
- C#4.0中的协变和逆变
原文地址 谈谈.Net中的协变和逆变 关于协变和逆变要从面向对象继承说起.继承关系是指子类和父类之间的关系:子类从父类继承所以子类的实例也就是父类的实例.比如说Animal是父类,Dog是从Anima ...
- delete an extra edge from BST
Given a BST, remove an extra edge to make it BST. 7 / \ 5 9 / \ / 3 8 public void deleteEdge(T ...
- 【2019V2全新发布】ComponentOne .NET开发控件集,新增.NET Core数据引擎
ComponentOne .NET开发控件集 2019V2正式发布,除持续完善并加入全新的.NET开发控件外,还针对产品架构稳定性.易用性.与.NET Core平台深度集成.已有控件功能增强等多个方面 ...