公司让我做一个看一下在优化的程序和比原来的程序快多少,但是文件还在运行的服务器上,我需要把用到的文件复制到测试服务器上去。但是测试服务器上有的,目录不全,会导致scp出错。就发生了以下的故事。

首选我要查看每个程序用到的文件,然后我整理成了一个TXT

  1. scp -r /DWH3/LV3/TRIALFL_TBL/* creat@10.100.2.138:/DWH3/LV3/TRIALFL_TBL
  2. 1
  3. scp /DWH3/LV3/URE/HANBAI_DAYLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_DAYLIST
  4. 1.1
  5. scp /DWH3/TBL/TEN_KYAKURITU.RIREKI creat@10.100.2.138:/DWH3/TBL/
  6. scp /DWH3/TBL/ZEIRITU creat@10.100.2.138:/DWH3/TBL/
  7. scp /DWH3/TBL/JAN_TOUROKUDAY creat@10.100.2.138:/DWH3/TBL/
  8. scp /DWH3/TBL/BUNDLEID_PRODUCTCD_IRISU creat@10.100.2.138:/DWH3/TBL/
  9. scp /DWH3/LV3/URE/HANBAI_MEISAI/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_MEISAI/
  10. scp /DWH3/LV3/URE/HANBAI_HEADER/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_HEADER/
  11.  
  12. 2
  13. 同1
  14. 2.1
  15. 同1.1.1
  16. 同1.1.2
  17. 同1.1.3
  18. 同1.1.4
  19. 同1.1.5
  20. 同1.1.6
  21.  
  22. 3
  23. 同1
  24. 3.1
  25. 同1.1.1
  26. 同1.1.2
  27. 同1.1.3
  28. 同1.1.4
  29. 同1.1.5
  30. 同1.1.6
  31.  
  32. 4~6 同一
  33.  
  34. 7
  35. scp /DWH3/LV3/URE/HANBAI_WEEKLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_WEEKLIST/
  36. 7.1
  37. scp /DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_CHOKUEI/
  38. scp /DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_TENANT/
  39.  
  40. 8
  41. 同7
  42. 8.1
  43. scp /DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_CHOKUEI/
  44. scp /DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_TENANT/
  45.  
  46. 9
  47. 同7
  48. 9.1
  49. scp /DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_CHOKUEI/
  50. scp /DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_TENANT/
  51.  
  52. 10
  53. 同7
  54. 10.1
  55. scp /DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_CHOKUEI/
  56. scp /DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_TENANT/
  57.  
  58. 11
  59. 同7
  60. 11.1
  61. scp /DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_CHOKUEI/
  62. scp /DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_TENANT/
  63.  
  64. 12
  65. 同7
  66. 12.1
  67. scp /DWH/LV3/URE/HIBETU_FL_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_FL_KYAKUSU_CHOKUEI/
  68. scp /DWH/LV3/URE/HIBETU_FL_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_FL_KYAKUSU_TENANT/
  69.  
  70. 13
  71. scp /DWH3/LV3/URE/HANBAI_MONTHLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_MONTHLIST/
  72. 13.1
  73. 同7.1
  74.  
  75. 14
  76. 同13
  77. 14.1
  78. 同8.1
  79.  
  80. 15
  81. 同13
  82. 15.1
  83. 同9.1
  84.  
  85. 16
  86. 同13
  87. 16.1
  88. 同10.1
  89.  
  90. 17
  91. 同13
  92. 17.1
  93. 同11
  94.  
  95. 18
  96. 同13
  97. 18.1
  98. 同12

一共十八个程序,暂时把这个文件保存成c

首先提取scp

cat c | sed -e '/^[^s]/d;/^$/d'

  1. scp -r /DWH3/LV3/TRIALFL_TBL/* creat@10.100.2.138:/DWH3/LV3/TRIALFL_TBL
  2. scp /DWH3/LV3/URE/HANBAI_DAYLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_DAYLIST
  3. scp /DWH3/TBL/TEN_KYAKURITU.RIREKI creat@10.100.2.138:/DWH3/TBL/
  4. scp /DWH3/TBL/ZEIRITU creat@10.100.2.138:/DWH3/TBL/
  5. scp /DWH3/TBL/JAN_TOUROKUDAY creat@10.100.2.138:/DWH3/TBL/
  6. scp /DWH3/TBL/BUNDLEID_PRODUCTCD_IRISU creat@10.100.2.138:/DWH3/TBL/
  7. scp /DWH3/LV3/URE/HANBAI_MEISAI/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_MEISAI/
  8. scp /DWH3/LV3/URE/HANBAI_HEADER/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_HEADER/
  9. scp /DWH3/LV3/URE/HANBAI_WEEKLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_WEEKLIST/
  10. scp /DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_CHOKUEI/
  11. scp /DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_TENANT/
  12. scp /DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_CHOKUEI/
  13. scp /DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_TENANT/
  14. scp /DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_CHOKUEI/
  15. scp /DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_TENANT/
  16. scp /DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_CHOKUEI/
  17. scp /DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_TENANT/
  18. scp /DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_CHOKUEI/
  19. scp /DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_TENANT/
  20. scp /DWH/LV3/URE/HIBETU_FL_KYAKUSU_CHOKUEI/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_FL_KYAKUSU_CHOKUEI/
  21. scp /DWH/LV3/URE/HIBETU_FL_KYAKUSU_TENANT/2016032*.gz creat@10.100.2.138:/DWH/LV3/URE/HIBETU_FL_KYAKUSU_TENANT/
  22. scp /DWH3/LV3/URE/HANBAI_MONTHLIST/2016032*.gz creat@10.100.2.138:/DWH3/LV3/URE/HANBAI_MONTHLIST/

然后提取出在目标服务器运行shell

cat c | sed -e '/^[^s]/d;/^$/d' |sed -n 's/.*creat@10.100.2.138:\S//p' |uniq |sed 's/^DWH/mkdir -p &/g'

  1. mkdir -p DWH3/LV3/TRIALFL_TBL
  2. mkdir -p DWH3/LV3/URE/HANBAI_DAYLIST
  3. mkdir -p DWH3/TBL/
  4. mkdir -p DWH3/LV3/URE/HANBAI_MEISAI/
  5. mkdir -p DWH3/LV3/URE/HANBAI_HEADER/
  6. mkdir -p DWH3/LV3/URE/HANBAI_WEEKLIST/
  7. mkdir -p DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_CHOKUEI/
  8. mkdir -p DWH/LV3/URE/HIBETU_SUBSEGMENT_KYAKUSU_TENANT/
  9. mkdir -p DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_CHOKUEI/
  10. mkdir -p DWH/LV3/URE/HIBETU_SEGMENT_KYAKUSU_TENANT/
  11. mkdir -p DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_CHOKUEI/
  12. mkdir -p DWH/LV3/URE/HIBETU_SUBCATEGORY_KYAKUSU_TENANT/
  13. mkdir -p DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_CHOKUEI/
  14. mkdir -p DWH/LV3/URE/HIBETU_CATEGORY_KYAKUSU_TENANT/
  15. mkdir -p DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_CHOKUEI/
  16. mkdir -p DWH/LV3/URE/HIBETU_ZONE_KYAKUSU_TENANT/
  17. mkdir -p DWH/LV3/URE/HIBETU_FL_KYAKUSU_CHOKUEI/
  18. mkdir -p DWH/LV3/URE/HIBETU_FL_KYAKUSU_TENANT/

大功告成

关于sed的应用的更多相关文章

  1. sed的应用

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  2. 文本处理三剑客之sed命令

    第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...

  3. 6-2 sed 命令

    1. sed : stream editor,流编辑器 是处理纯ASICC纯文本,按行琢行操作的. 编辑器有两种,行编辑器和全屏编辑器 sed:默认不编辑原文件,仅对模式空间中的数据做处理,而后.处理 ...

  4. 基本shell编程【3】- 常用的工具awk\sed\sort\uniq\od

    awk awk是个很好用的东西,大量使用在linux系统分析的结果展示处理上.并且可以使用管道, input | awk ''  | output 1.首先要知道形式 awk 'command' fi ...

  5. sed awk grep三剑客常用

    sed的常用用法: awk的常用用法: grep的常用用法: 除了列出符合行之外,并且列出后10行. grep -A 10 Exception kzfinance-front.log 除了列出符合行之 ...

  6. linux shell 用sed命令在文本的行尾或行首添加字符

    转自 http://www.cnblogs.com/aaronwxb/archive/2011/08/19/2145364.html 昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed ...

  7. Sed、Awk单行脚本快速参考

    文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...

  8. sed awk 样例

    sed [options] '[action]' filename options: -n:一般sed命令会把所有数据都输出到屏幕,如果加入此选项,则只会把经过sed命令处理的行输出到屏幕. -e:允 ...

  9. linux sed命令详解

    简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...

  10. sed命令详解

    搜索 纠正错误  添加实例 sed 功能强大的流式文本编辑器 补充说明 sed 是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时 ...

随机推荐

  1. mybatis 与 反射

    Mybatis是个优秀的ORM框架,所以它的反射层一定不会让我们失望 图比较大,可以开新页面查看 可以看到,Mybatis对这一块抽象的比较复杂,我们可以看到有几个比较主要的部分:Reflector. ...

  2. mybatis知识总结

    基于昨天的mybatis入门详解,今天我们再来看看mybatis稍微高深些的知识点. 1.解决Model属性和数据库字段不一致的问题 1),开启驼峰命名 2),使用resultMap进行映射, < ...

  3. 国外.net学习资源网站

    转载 :出处:http://www.cnblogs.com/kingjiong/ 名称:快速入门地址 http://chs.gotdotnet.com/quickstart/ 描述:本站点是微软.NE ...

  4. 类库dll引用不成功问题

    警告:未能解析引用的程序集“*******, Version=1.0.0.0, Culture=neutral,”,因为它对不在当前目标框架“.NETFramework,Version=v4.0,Pr ...

  5. java 线程池的用法

    1.java自带的类ExecutorService用于提供线程池服务,可以一下方法初始化线程池: ExecutorService pool = Executors.newFixedThreadPool ...

  6. [.NET]Repeater控件使用技巧

    1.控制Repeater表格中的按钮显隐 1.1 定义方法 public void Repeater1_ItemDataBinding(object sender, RepeaterItemEvent ...

  7. C#多态联系之虚方法

    class Class1 { static void Main(string[] args) { YuanGong yg = new YuanGong(); JingLi jl = new JingL ...

  8. CentOS(Linux) - SVN使用笔记(二) - 创建SVN仓库及下载仓库到本地

    1.安装: 参考文章 CentOS(Linux) - SVN使用笔记(一) -  安装SVN过程及开启和关闭svn服务指令 2.创建仓库 #创建项目目录 mkdir /usr/svn#进入目录cd / ...

  9. spring的CXF远程服务

    http://www.tuicool.com/articles/Rb2uUn      //远程调用  spring的cxf,亲自整合成功

  10. 移动平台中 meta 标签的使用

    一.meta 标签分两大部分:HTTP 标题信息(http-equiv)和页面描述信息(name). 1.http-equiv 属性的 Content-Type 值(显示字符集的设定) 说明:设定页面 ...