免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1776 | 回复: 4
打印 上一主题 下一主题

[系统管理] 后台任务执行报错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-10-09 23:45 |只看该作者 |倒序浏览
本帖最后由 supself 于 2012-10-09 23:45 编辑
  1. #!/bin/bash
  2. #deploy files to Nginx1,2,3,4,5
  3. deploy_path=/home/zxc/Nginx_deploy
  4. publish_path=/home/zxc/Nginx_publish
  5. unzip $publish_path/static.zip
  6. for ((i=1;i<=5;i++))
  7. do
  8.         Remote_path=/opt/Nginx$i/
  9.         nohup ssh deploy@192.168.121.1 "cd $Remote_path;rm -rf static" < /dev/null &
  10.         nohup ssh deploy@192.168.121.2 "cd $Remote_path;rm -rf static" < /dev/null &
  11.         nohup scp -r $deploy_path/static deploy@192.168.121.1:$Remote_path &
  12.         nohup scp -r $deploy_path/static deploy@192.168.121.2:$Remote_path &
  13. done
  14. rm -rf $deploy_path/static
复制代码
[/code]
本地服务器已经配置好公钥,会报错,生成nohup.out文件,提示
/home/zxc/Nginx_deploy/static : No such file or directory

我把代码改成
  1. #!/bin/bash
  2. #deploy files to Nginx1,2,3,4,5
  3. deploy_path=/home/zxc/Nginx_deploy
  4. publish_path=/home/zxc/Nginx_publish
  5. unzip $publish_path/static.zip
  6. for ((i=1;i<=5;i++))
  7. do
  8.         Remote_path=/opt/Nginx$i/
  9.         ssh deploy@192.168.121.1 "cd $Remote_path;rm -rf static" < /dev/null
  10.         ssh deploy@192.168.121.2 "cd $Remote_path;rm -rf static" < /dev/null
  11.         scp -r $deploy_path/static deploy@192.168.121.1:$Remote_path
  12.         scp -r $deploy_path/static deploy@192.168.121.2:$Remote_path
  13. done
  14. rm -rf $deploy_path/static
复制代码
然后就没有问题

为什么上面的代码就会报错呢?求指教!

论坛徽章:
0
2 [报告]
发表于 2012-10-12 07:33 |只看该作者
没人回答一下吗?

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
3 [报告]
发表于 2012-10-12 10:09 |只看该作者
本帖最后由 rdcwayx 于 2012-10-12 12:10 编辑

也就是加了nohup 后,命令就不正常,你自己Google 一下,是否 nohup 和 ssh 有兼容问题。

我的环境下试过,没有你的问题。 可以nohup ssh command &

论坛徽章:
42
19周年集字徽章-周
日期:2019-10-14 14:35:31平安夜徽章
日期:2015-12-26 00:06:30数据库技术版块每日发帖之星
日期:2015-12-01 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43IT运维版块每日发帖之星
日期:2015-08-17 06:20:00寅虎
日期:2014-06-04 16:25:27狮子座
日期:2014-05-12 11:00:00辰龙
日期:2013-12-20 17:07:19射手座
日期:2013-10-24 21:01:23CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-01-27 06:20:0015-16赛季CBA联赛之新疆
日期:2016-06-07 14:10:01
4 [报告]
发表于 2012-10-12 11:59 |只看该作者
你这里nohup的意义是什么?
一边删除,一边复制不怕冲突吗?
可以nohup执行主调的sh,里面就顺序执行呗

论坛徽章:
0
5 [报告]
发表于 2012-10-13 21:59 |只看该作者
回复 4# laputa73

使用nohup command &是为了同时传5个文件,当i=1时,开始传文件,后台执行;然后执行i=2的,依次下去

后面添加个sleep 就可以不冲突


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP