Windows安装cygwin,结合sftp实现每天上传/下载文件

cygwin是一个运行在windows系统的Linux仿真环境

某些windows服务器需要和其他的Linux服务器进行交互,或者在此服务器使用Linux系统的某些功能,但是服务器系统是windows server,并不支持,在此用cygwin实现。

cygwin官网:https://www.cygwin.com/
cygwin百度网盘链接
链接:https://pan.baidu.com/s/1Als6H0gdGtS3bE5nDzbq1g
提取码:w6EG

1. Cygwin配置

1.1 Cygwin安装

①Install from Internet,这种模式直接从Internet安装,适合网速较快的情况;
②Download Without Installing,这种模式只从网上下载Cygwin的组件包,但不安装;
③Install from Local Directory,这种模式与上面第二种模式对应,当你的Cygwin组件包已经下载到本地,则可以使用此模式从本地安装Cygwin

image.png

选择安装路径

image.png

在下载的同时,Cygwin组件也保存到了本地,以便以后能够再次安装,这一步选择安装过程中从网上下载的Cygwin组件包的保存位置


image.png

①Use System Proxy Settings 使用系统的代理设置
②Direct Connection 一般多数用户都是这种直接连接的网络,所以都是直接使用默认设置
③Use HTTP/FTP Proxy 使用HTTP或FTP类型的代理。如果有需要,自己选择此项后,设置对应的代理地址和端口


image.png

下载常用安装的组件包、cygrunsrv、automake、make、gcc-core、wget、gcc、vim、cron、openssh
image.png

等待安装完成即可

image.png

配置和其他主机的免密登录

ssh-keygen将会生成密钥文件和私钥文件id_rsa,id_rsa.pub


image.png

将 .pub 文件复制到B机器的 .ssh 目录, 并在B机器执行命令
cat /root/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
从此ssh连接不需要密码

3. 同步脚本编写

#!/bin/bash 
fileTXT=`ls /cygdrive/j/cygwin64/home/btmuadmin/prjIMAS0909/Data/$(date +%Y%m%d) | grep "TXT$"`
fileX=`ls /cygdrive/j/cygwin64/home/btmuadmin/prjIMAS0909/Data/$(date +%Y%m%d) | grep "^XXX"`
date=$(date "+%Y-%m-%d %H:%M:%S")
useradd=system
path=/cygdrive/j/cygwin64/home/btmuadmin/prjIMAS0909/Data/$(date +%Y%m%d)
sftppath=/inroot/chinan/dat/interface/rcv/dea
logpath=/cygdrive/j/cygwin64/home/btmuadmin/logs/sftpput.log

for t in $fileTXT
   do

   sftp -i   /cygdrive/j/cygwin64/home/btmuadmin/.ssh/id_rsa $useradd <<A
      put $path/$t  $sftppath
      exit
A
#if判断上传TXT格式命令是否成功,不成功则日志追加failed并终止脚本
   if  [ $? -eq 0 ];then
      echo  " $date  $t  put success" >> $logpath
   else
      echo  " $date  $t  put failed" >> $logpath
      exit
   fi


#if判断上条命令是否成功,成功则上传CTL文件,不成功则日志追加未执行上传目录并终止脚本
   if  [ $? -eq 0 ];then

      sftp -i   /cygdrive/j/cygwin64/home/btmuadmin/.ssh/id_rsa $useradd <<F
         put $path/${t%.TXT}.CTL   $sftppath
         exit
F
#if判断上传CTL格式命令是否成功,不成功则日志追加failed并终止脚本
      if  [ $? -eq 0 ];then
         echo  " $date  ${t%.TXT}.CTL  put success" >> $logpath
      else
         echo  " $date  ${t%.TXT}.CTL  put failed" >> $logpath
         exit
      fi

   else
      echo  " $date  ${t%.TXT}.CTL  unexecuted put command" >> $logpath
      exit
   fi
done

#if判断上条命令是否成功
if  [ $? -eq 0 ];then
   sftp -i   /cygdrive/j/cygwin64/home/btmuadmin/.ssh/id_rsa $useradd <<G
      put $path/$fileX  $sftppath
      exit
G

    if  [ $? -eq 0 ];then
           echo  " $date  $fileX  put success" >> $logpath
           echo  "All files uploaded successfully"
    else
           echo  " $date $fileX  put failed" >> $logpath
    fi
else
   echo  " $date  $fileX  unexecuted put command" >> $logpath
fi

4. Windows server 配置

4.1 环境变量配置

image.png

image.png

进入DOS命令提示符set PATH=C:\cygwin64\bin
输入:echo %PATH% 环境变量中设置的 PATH 值已经生效。

image.png

4.2 启动bat编写

image.png

4.3 计划任务

控制面板-->系统和安全-->管理工具-->任务计划程序
创建基本任务-->触发器(每日)-->添加程序脚本-->完成

image.png

修改任务属性 运行账户为SYSTEM

image.png

根据需要修改失败重启频率

image.png

设置完成后任务会在每天规定的时间执行~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 175,490评论 5 419
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 74,060评论 2 335
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 124,407评论 0 291
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 47,741评论 0 248
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 56,543评论 3 329
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 43,040评论 1 246
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 34,107评论 3 358
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 32,646评论 0 229
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 36,694评论 1 271
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 32,398评论 2 279
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 33,987评论 1 288
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 30,097评论 3 285
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 35,298评论 3 282
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 27,278评论 0 14
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 28,413评论 1 232
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 38,397评论 2 309
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 38,099评论 2 314

推荐阅读更多精彩内容