shell 脚本FTP自动上传文件

下面的脚本 会把本地的文本文件压缩后, 上传到FTP服务器上。

里面有一点小逻辑, 就是上传的文本文件 是 日期时间.txt 形式的, 一天写一个日志文件, 今天的文件不上传, 只上传

老的日志文件。

[c-sharp] view plain copy

  1. #/bin/sh
  2. suffix=`cat suffix.ini`
  3. now=`date +%Y%m%d`
  4. curfile="./$now.txt"
  5. curgzfile="$curfile.tar.gz"
  6. upload ()
  7. {
  8. ftp -n<<!
  9. open 192.168.2.1
  10. user root 123456
  11. binary
  12. mkdir logservice
  13. cd logservice
  14. lcd ./
  15. prompt
  16. put "$1"
  17. ls
  18. close
  19. bye
  20. !
  21. }
  22. updir="./uploaded"
  23. if [ -d "$updir" ]
  24. then
  25. echo "updir exists"
  26. else
  27. mkdir $updir
  28. fi
  29. for file in $1./*.txt
  30. do
  31. if [ "$file" != "$curfile" ]
  32. then
  33. if [ "$file" != "./*.txt" ]
  34. then
  35. echo "$file"
  36. gzfile="$file.$suffix.tar.gz"
  37. if [ -e "$gzfile" ]
  38. then
  39. echo "file $gzfile exists"
  40. else
  41. tar -cvzf "$gzfile" "$file"
  42. echo "create tar.gz file=$gzfile"
  43. fi
  44. upload $gzfile
  45. rm -fr $file
  46. mv "$gzfile" "./uploaded"
  47. fi
  48. fi
  49. done

http://blog.csdn.net/langeldep/article/details/6166633

时间: 2024-08-02 11:03:56

shell 脚本FTP自动上传文件的相关文章

linux下shell脚本执行jar文件

最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚本 上面是小弟写的shell脚本.写的不好请见谅. 首先遇到的第一个坑 我在window下写的 然后道linux中执行,在linux死活都说俺的19行有错误,俺就不明白了,哪里有错,问了下别人,也说没错.突然有个高人问我在哪编写的,小弟回答在win下,他告诉俺执行下这个命令: dos2unix se

Mac下通过shell脚本修改properties文件

通过shell脚本替换属性文件中的某行记录 假设有如下属性文件 demo.properties user.name=test user.password=123456 ............................... 需求:先需要通过shell 脚本将 user.name 和 user.password 的value值替换为实际需要的用户名和密码, 将可以通过如下方式实现: sed -i "s#^user.name=.*#user.name=用户名#g"  path/de

让你提前认识软件开发(22):shell脚本中的文件操作

第1部分 重新认识C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比如从文件中读取一行数据.向文件追加一行数据等.完成文件读写操作的方法有很多,了解各种命令下文件操作的执行情况,有助于开发人员在不同使用场景下选择合适的命令. 本文以实际的shell脚本为例,介绍了对文件进行操作的不同方法,为相关开发工作提供了参考. [关键词] shell  文件操作  读写  效率 一.概述 在某些软件项目的需求文档中,要求程序一次性读或写的数据规模较大,可达1

shell脚本生成xml文件

今天把这段时间学习完shell后完成工作上的一个小案件整理了一下,分享给大家! 说来也巧了,作为一个刚刚毕业半年的菜鸟,进入公司后,听公司的大牛推荐学习linux--”鸟哥的私房菜“,基本上是从去年8月份开始到了今年的1月份,基本上是把基础篇看完了,开始了解shell脚本的相关知识.刚好公司有了一个shell脚本的案件给我了,时间上也没有多紧.然后就一边学习一边开始做,虽然中途客户反映先前的业务逻辑有问题耽搁了两周,但总算是到最后完成了,自己学习的东西能用到很开心,今天闲了,把代码整理了一下,分

[Shell 脚本] 备份数据库文件至OSS服务(纯shell脚本无sdk)

背景: 凡事使用服务器搭建的网站就需要定时备份网站数据,常见的方法是打包网站目录,然后备份到FTP服务器上等.也有通过OSS SDK把备份的网站文件上传到OSS服务器上,但是通过SDK来实现,需要一定的技术能力,而且相对比较复杂,需要使用更多的文件,而这篇文章是通过shell脚本,并不是通过OSS SDK来上传文件,简单方便. 步骤: 1.首先需要在阿里云注册账号,开通OSS服务,创建bucket,Bucket设置为私有读写. 2.将下面的脚本文件复制下来,保存为 .sh 脚本文件(例如:bac

Linux 下Shell脚本删除过期文件

在写这个shell之前先说一下,stat命令的使用方法 一.关于时间戳 每一个文件都有3中时间(称为时间戳timestamps),对这3种时间,很多时候容易混淆不清,因此 这里要说明下:   Access time(atime):是指取用文件的时间,所谓取用,常见的操作有:使用编辑器查看文件内容,使用cat命令显示文件内容,使用cp命令把该文件(即来源文件)复制成其他文件,或者在这个文件上运用grep sed more less tail head 等命令,凡是读取而不修改文件的操作,均衡改变文

如何使用Shell脚本编译生成Archive文件并导出签名IPA文件。

1. build 脚本说明 本Shell脚本用于build,XCode的workspace源代码工程,并导出成可重签名的IPA文件,用于分发测试安装文件和用于提交appstore审核的文件.实现辅助产品开发,测试的配置管理工作. 使用本脚本需要以下环境 - Mac OS 10.9+ - XCode 6.0 or later and command line tools - 用于WorkSpace工程,例如使用了Cocoapods依赖库管理的工程 - *配置好开发证书和ad ho 证书(for D

Shell脚本实现对文件编辑

常见Linux文件的编辑命令 vi/vim,有时候我们想写一个脚本实现对文件编辑,这个时候,可能就不够用了,下面介绍一些办法 1.echo命令 Shell的echo命令常用于字符串的输出 例如: [[email protected] zxy]# echo 'Hello World !' > file1[[email protected] zxy]# cat file1Hello World ! [[email protected] zxy]# echo 'Good Luck' > file1[

shell脚本-切换软链接文件(nagios监控)

任务:需要在nagios中定义服务去检测3个DC的状态(1.主机状态.2.consul cluster状态.3.nomad cluster状态),只要其中某个服务状态失效,就触发nagios eventhandler去改变dns服务器的链接文件,如上图所示. 脚本:脚本中的服务器地址和实际的不同 脚本1:该脚本检测3个DC的服务状态,根据检测到的结果会输出目前dns应该链接的文件名,nagios上会显示该文件名.如果dns没有链接到正确的文件名,nagios就会报警并触发event-handle