ssh 连上主机,并用nohup后台执行脚本

以下本脚本实现了:先从本地复制脚本到远程主机,再用ssh连上远程主机,执行之前复制的脚本(由于脚本需要执行很长时间,故放到后台执行),此脚本仅用于备忘,如有不足敬请指点!

#!/bin/bash

cd /tmp
i=1
#ip.txt保存主机列表,第三列为IP,第二列为主机名,第一列为主机所在地址
cat ip.txt|while read line
do
    IP=`echo $line|awk '{print $3}'`
    addr=`echo $line|awk '{print $1}'`
    echo "i=$i  $addr  IP = $IP"
    scp -o "StrictHostKeyChecking no" /root/tt/greplog.sh [email protected]"$IP":/tmp/
    ssh [email protected]${IP}<<EOF   #脸上主机,执行多条命令,前提是要配置好密钥登录
        chmod a+x /tmp/greplog.sh
        nohup /tmp/greplog.sh > myout.file 2>&1 &   #放到后台执行
        exit
EOF
    i=` expr $i + 1 `
done
exit 0

ssh 连上主机,并用nohup后台执行脚本

时间: 2024-10-12 07:43:17

ssh 连上主机,并用nohup后台执行脚本的相关文章

linux-ssh远程后台执行脚本-放置后台执行问题(转)

写了一个监控负载的小脚本(死循环,测试结束后再kill对应进程),因需要监控多台服务器,所以在一台服务器上使用ssh统一执行脚本 遇到问题:使用ssh [email protected] '/usr/local/luly/loadavg.sh 2 2 &'执行本机没有即时退出,占用ssh连接本意是发送命令到远程机执行,本机发送后直接退出 尝试:1.增加nohup,效果相同:ssh [email protected] 'nohup /usr/local/luly/loadavg.sh 2 2 &am

如何后台执行脚本程序?

文章来自:http://www.cnblogs.com/hark0623/p/4196381.html    转载请注明 需要在你的脚本前面添加nohub,后边添加&.例如下面的脚本: nohup ./flume_client.sh & nohup的作用:当你的SecureCRT会话关闭后,保证你的脚本还在Linux后台执行 &的作业:在你的会话中后台执行脚本. 如果不添加&的话,那么你关闭SecureCRT(这时也就是关闭了会话)后,你的脚本一定也会断掉的

Linux后台执行脚本文件,nohup

看运维人员执行nohup命令后,把程序放在后台执行,很高大上,就研究了一下,这个命令. nohup命令及其输出文件 nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令.该命令可以在你退出帐户/关闭终端之后继续运行相应的进程.nohup就是不挂起的意思( n ohang up). 该命令的一般形式为:nohup command & 使用nohup命令提交作业 如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为

使用nohup后台执行ftp传输命令

因为有的时候会需要长时间传输文件,所以想用nohup 结合shell脚本一起使用,就不用一直在电脑面前了 . nohup 用法: nohup command & 然后就会出现 对应的 pid 线程号,可以记住,这样执行出错的时候,可以直接用kill -9 pid 掉 传输FTP 脚本 ftp.sh如下 : echo "start files upload,pid: $$" ftp -niv <<- EOF open IP_ADDRESS user name pass

在linux后台执行脚本

1. 使用&符号在后台执行命令 你可以在Linux命令或者脚本后面增加&符号,从而使命令或脚本在后台执行,例如:. $ ./my-shell-script.sh & 2. 使用nohup在后台执行命令 使用&符号在后台执行命令或脚本后,如果你退出登录,这个命令就会被自动终止掉.要避免这种情况,你可以使用nohup命令,如下所示: $ nohup ./my-shell-script.sh & 3. 使用screen执行命令 通过nohup和&符号在后台执行命令

后台执行脚本管理

防止脚本执行中断的方法: a.sh while.sh & b.screen 总结此命令 c.nohup /server/script/02/while.sh & crtl + c   停止任务 ctrl + z   暂停任务 bg     把任务放到后台执行 fg 把后台的第一个任务放到前台执行,如果有多个任务,可以用fg 加任务编号调出 jobs   查看当前执行的脚本或者任务 top 显示进程 nice 改变系统优先级 nohup 用户退出系统之后可以继续工作 pgrep 查看匹配条件

后台执行脚本

需求分析我们经常会遇到一个问题,当使用SSH远程登录Linux服务器运行一些耗时较长的任务,当用户注销或者网络断开时,终端会收到HUP(hangup)信号从而关闭其所有子进程. 解决办法Linux中,可以使用nohup将脚本放置在后台运行,其命令如下: nohup python spider.py params1 > nohup.out 2>&1 & # spider.py:脚本名 params1参数 但在执行上述代码无法查看程序运行过程中python在控制台的输出结果,解决办

nohup 后台运行脚本,且可以实时查看日志

-u加在python上 python命令加上-u(unbuffered)参数后会强制其标准输出也同标准错误一样不通过缓存直接打印到屏幕. 这是因为python的缓存机制所决定的 如果是使用 nohup python abc.py > nohup.log 2>&1 & 的话,可以将日志写入到nohup.log文件,但是没法实时用tail -f nohup.log来查看日志. 解决方法:nohup python -u abc.py > nohup.log 2>&

后台执行命令:&amp;和nohup command &amp; 以及关闭、查看后台任务

当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件.对于密集访问磁盘的进程,我们更希望它能够在每天的非负荷高峰时间段运行(例如凌晨).为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择方法可供使用. 1.& 当在前台运行某个作业时,终端被该作业占据:可以在命令后面加上& 实现后台运行.例如:sh test.sh & 适合在后台运行的命令有f i n d.费时的排序及一些s h e l l脚本.在后台运