#!/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. Dynamics CRM2015 on-premises直接升级Dynamics CRM2016 on-premises

    Dynamics crm2016 on-premises版本已与12月14日开放下载,下载地址:https://www.microsoft.com/zh-cn/download/details.asp ...

  2. EBS库存(INV)模块常用表

     select * from org_organization_definitions库存组织 select * from mtl_parameters组织参数 select * from mtl ...

  3. Python pygame安装过程笔记

    今天看到一个教程,是关于Python安装pygame模块的.觉得很好,拿来分享一下. 安装Python 额,这个小题貌似在这里很是多余啊.但是为了照顾到刚刚学习Python的童鞋,我还是多啰嗦两句吧. ...

  4. Android简易实战教程--第十三话《短信备份和还原~三》

    之前写过短信备份的小案例,哪里仅仅是虚拟了几条短信信息.本篇封装一个业务类,且直接通过内容提供者,访问本系统的短信信息,再提供对外接口.如果想要短信备份和短信还原,直接复制这段代码即可.对于您调用这个 ...

  5. debian 安装jdk

    JDK下载http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6- ...

  6. java wait和notify及 synchronized sleep 总结

    java 中线程我一直弄不清线程锁等 所以写了一些例子验证看法: 在这之前先看下API中wait中的解释: wait:方法来之java.lang.Objetc 方法翻译:在其他线程调用此对象的 not ...

  7. J2EE学习从菜鸟变大鸟之五 JDBC(Java Data Base Connectivity)

    JDBC刚开始学习这个的时候看到了,以为是ODBC呢,很是相似啊,总的来说还是基本上一类的东东,但是还有一些细微的区别,下面和大家一起分享学习. JDBC(Java Data Base Connect ...

  8. 分析比较KafkaWordCount及DierctKafkaWordCount

    参考spark官方文档,Spark Streaming + Kafka Integration Guide,其中提到Spark Streaming如何从Kafka中接收数据.主要有两种方法,一种是使用 ...

  9. Cocos2D中屏幕分辨率解释

    Cocos2D的坐标(0,0)点在屏幕的左下角,然后x和y的坐标值像右上角逐渐增加. 因为项目一般是横屏(landscape)模式,这表示右上角坐标在3.5寸屏上为(480,320), 在4寸屏上为( ...

  10. Android光线传感器-android学习之旅(65)

    主要讲解光线传感器的使用,其实所有的传感器用法类似 主要是定义一个TextView用来显示光线强度,用完了以后记得在OnDestory里面释放资源 代码如下 public class MainActi ...