#!/bin/sh

TARGETIP=192.168.88.3         #这里是你要挂在的ftp服务器的IP地址
MOUNTDIR=/mnt
TARGETDIR=/root/Desktop/Work
ERRORLOG=/tmp/Copy.log

#1.挂载目录
#环境检查

#清掉之前的日志
echo -n "" >  $ERRORLOG       #如果挂载不到,或是出错就把出错信息打印到log里去,方便查看

if ! test -e $TARGETDIR       #如果在192.168.88.3这个IP下不存在这个目录
then
	mkdir   $TARGETDIR		  #那么就创建一个目录
fi

ping  -c 1 -i 0.1  $TARGETIP  &> /dev/null    #以0.1秒一次的速度去ping服务器IP,再将ping产生的信息丢掉null这个大垃圾桶里
#如果测试出现ping不通的情况下就产生错误信息并退出
if test  $?  -ne 0
then
	echo "time:`date` ERR: Ping $TARGETIP 不通"  >> $ERRORLOG
	#自主定义
	exit 0
fi

#ping 通

#测试是否可以挂载
showmount -e  $TARGETIP | grep "20150720"  &>  /dev/null
if test $? -ne 0
then
	echo "time:`date` ERR: Showmount $TARGETIP Fail" >> $ERRORLOG
	#自主定义
	exit 0
fi

#挂载相关的目录
mount -t nfs $TARGETIP:/var/ftp/pub/20150720   $MOUNTDIR
if test $? -ne 0
then
	echo "time:`date` ERR: Mount $TARGETIP Fail" >> $ERRORLOG
	exit 0
fi

#执行复制脚本,拷贝相关的东西
#这个复制脚本后面会说
./Copy.sh   $MOUNTDIR    $TARGETDIR    $ERRORLOG    &  #这个&的符号表示丢到后台让它去执行

#休息20秒
sleep  20

#解挂
while :
do
	umount   $MOUNTDIR
	if test $? -eq 0
	then
			break
	fi

	sleep 1
done

echo   "time:`date` INFO: Copy Finish successfully" >> $ERRORLOG

用shell脚本挂载linux主机拷贝相应文件的更多相关文章

  1. 用shell脚本挂载linux主机拷贝相应文件copy.sh

    #!/bin/sh # $1 MOUNTDIR $2 TARGETDIR $3 ERRORLOG #参数检查 if test $# -ne 3 then echo "argument che ...

  2. shell脚本兼容linux/unix与windows/cygwin的基础(注意处理好CR, LF, CR/LF 回车 换行的问题)

    shell脚本兼容linux/unix与windows/cygwin的基础 :统一文本格式为:unix文本格式,即于LF为换行符(推荐方案) 在notepad上设置:编辑->档案格式转换-> ...

  3. Shell脚本查看linux系统性能瓶颈(转)

    Shell脚本查看linux系统性能瓶颈(转自:http://blog.51cto.com/lizhenliang/1687612) [root@test ~]# cat show_sys_info. ...

  4. 170509、文本编辑器编写的shell脚本在linux下无法执行的解决方法

    今天碰到一个奇怪的问题,编写好的shell脚本再linux上执行一直提示找不到文件或目录,后来想想是文本编辑器的问题,记录下来!!! 1.查看当前文本格式 Notepad++界面中,在右下角有文件格式 ...

  5. Shell脚本对Linux进行文件校验

    Shell脚本对Linux进行文件校验 一.需求 有客户等保需求对文件一致性进行校验,想到利用md5sum工具,因此写脚本来对文件进行自定义扫描,后期可以利用其进行校验,快速校验文件发现变更的文件,一 ...

  6. shell 脚本在linux中的应用

    shell脚本在linux中应用广泛,之前一直选用python写脚本来进行一些文件操作,但是最后发现shell脚本非常方便,所以特意来学习下皮毛,便于提高自己效率 定义变量 1 country=&qu ...

  7. shell脚本计算Linux网卡流量

    本文介绍了计算linux网卡流量的一个shell脚本,一个通过固定间隔时间获取ifconfig eth0 的字节值而计算出网卡流量的方法,有需要的朋友参考下. 使用shell脚本计算Linux网卡流量 ...

  8. shell携带附件,Linux下的自解压文件诞生了

    初衷 windows下有自解压文件,直接双击就能释放文件,并且还能执行释放文件前后要执行的脚本.Linux下我也想要这样的功能,因为我希望直接拷贝一个shell脚本给别人,别人直接运行就能用,而不是一 ...

  9. scp 可以在 2个 linux 主机间复制文件

    Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程.从远程复制到本地是两种使用方式.这里有具体举例: ================== Linu ...

随机推荐

  1. 【Netty源码解析】NioEventLoop

    上一篇博客[Netty源码学习]EventLoopGroup中我们介绍了EventLoopGroup,实际说来EventLoopGroup是EventLoop的一个集合,EventLoop是一个单线程 ...

  2. 14 Fragment 注意点

    API 过时问题 API 23过时 public void onAttach(Activity activity)替换为public void onAttach(Context context) 注意 ...

  3. Cocos2D v3.4.9粒子效果不能显示的原因分析及解决办法

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 在游戏App中为了衬托气氛我们往往使用一些特殊的图形效果,粒子 ...

  4. HttpClient4.5.2调用示例(转载+原创)

    操作HttpClient时的一个工具类,使用是HttpClient4.5.2 package com.xxxx.charactercheck.utils; import java.io.File; i ...

  5. Docker教程:dokcer machine的概念和安装

    http://blog.csdn.net/pipisorry/article/details/50920982 Docker machine介绍 做为Docker容器集群管理三剑客之一的Docker ...

  6. MySQL 数据库开发的 36 条军规

    MySQL 数据库开发的 36 条军规 写在前面的话: 总是在灾难发生后,才想起容灾的重要性: 总是在吃过亏后,才记得曾经有人提醒过. (一)核心军规 (1)不在数据库做运算:cpu计算务必移至业务层 ...

  7. 最简单的基于FFmpeg的AVfilter例子(水印叠加)

    ===================================================== 最简单的基于FFmpeg的AVfilter例子系列文章: 最简单的基于FFmpeg的AVfi ...

  8. Cocos2D:塔防游戏制作之旅(五)

    打开HelloWorldLayer.h文件,添加以下实例变量(在@interface行的花括号之后): NSMutableArray *towerBases; 将HelloWorldLayer.m文件 ...

  9. java 的序列化和反序列化的问题

    引言 将 Java 对象序列化为二进制文件的 Java 序列化技术是 Java 系列技术中一个较为重要的技术点,在大部分情况下,开发人员只需要了解被序列化的类需要实现 Serializable 接口, ...

  10. polaris: session和middleware的支持

    起因 polaris虽然是模仿tornado开发,但我觉得作为一个go的web框架,还需要提供一些额外的扩展支持. polaris现在已经支持session以及middleware,主要参加djang ...