Linux在后台执行命令或脚本

在日常的工作中,我们会遇到执行备份、恢复数据等执行过程时间很长的命令或者脚本程序运行,此时,我们为防止执行过程被打断,需要将命令或脚本在后台执行。
1)方法1
nohup sh reload.sh &
2)方法2(推荐使用)
使用screen命令临时在后台开辟一个新的窗口,将命令或脚本放到窗口内执行,这样执行过程就不会被断了。
具体实现方法如下:(前提是已经安装了screen包)
screen -S yangchunliriot 新建一个yangchunliriot的screen
screen -ls 列出所有的session,当然yangchunliriot也在其中
screen -r yangchunliriot 回到yangchunliriot的screen里
ctrl +a +d 退出screen
等待screen里的命令或者脚本程序执行完之后,exit退出screen,也是删除你所创建的screen,用完记得删除 = =。

原文地址:http://blog.51cto.com/12942223/2133842

时间: 2024-08-10 23:15:00

Linux在后台执行命令或脚本的相关文章

详解在 Linux 启动时,如何自动执行命令或脚本

我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情.按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟.当你注销或者关机时,也是这样. 更有意思的是,在系统启动以及用户登录或注销时,还可以让系统执行特定的操作. 本文,我们将探讨一下在 Linux 操作系统中实现这些目标的传统方法. 注意:我们假定使用的是 Bash 作为登录及注销的主 Shell.如果你使用的是其他 Shell,那么有些方法可能会无效.如果有其他的疑问

关于 Linux 下后台执行 Python 脚本的缓冲问题

[问题简述] 在 Linux 下后台执行 Python 脚本,重定向到日志文件,日志文件迟迟没有内容. [方案一](测试有效) nohup python3 -u t.py &> log.log & [方案一](测试无效) 方案二来自 stackoverflow,虽然测试无效,但其他地方也许会用到,记录一下. stdbuf -oL nohup python3 t.py &> log.log & *** walker *** 原文地址:http://blog.51c

inux学习笔记三 后台执行命令

1.cron 系统调度进程.是SHELL一个LUNX下的定时执行工具,在无需人工干预下进行作业. $/sbin/service crond start --启动crontab服务 $/sbin/service crond stop --停止crontab服务 $/sbin/service crond restart --重新启动服务 $/sbin/service crond reload --重新加载配置 linux中,默认不会开启cron服务,在启动cron服务后,才能享受该服务. cron

Linux for循环执行命令注意事项

如果for循环命令中带有一些符号,需要用()括起来. for i in {1..4}; do (python /data/UGCRobot/manage/Scheduler.py 1.log > /dev/null 2>&1 &); done Linux for循环执行命令注意事项

Python远程登录Linux操作系统,执行命令、创建目录、上传及下载文件

主要是创建文件: #! /bin/bash # -*- coding: utf-8 -*- import paramiko import os ssh = paramiko.SSHClient() key = paramiko.AutoAddPolicy() ssh.set_missing_host_key_policy(key) pkey = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa') paramiko.util.log

Linux下的Source命令及脚本的执行方式解析

Linux Source命令及脚本的执行方式解析 http://blog.csdn.net/wangyangkobe/article/details/6595143 当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录:这时就想到用source命令,如:source /etc/profile对source进行了学习,并且用它与sh 执行脚本进行了对比,现在总结一下. source命令:source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令.功能:使Sh

linux后台执行命令:&和nohup

本文摘自https://www.cnblogs.com/zzyoucan/p/7764590.html 当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件.对于密集访问磁盘的进程,我们更希望它能够在每天的非负荷高峰时间段运行(例如凌晨).为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择方法可供使用. & 当在前台运行某个作业时,终端被该作业占据:可以在命令后面加上& 实现后台运行.例如:sh test.sh

linux后台执行命令:&与nohup的用法

& 这种方法很简单,就是在命令之后加个“&”符号就可以了,如下: ./test & 这样一来,test程序就在后台运行了.但是,这样处理还不够,因为这样做虽然程序是在后台运行了,但log依然不停的输出到当前终端.因此,要让终端彻底的清静,还应将log重定向到指定的文件: ./test >> out.txt 2>&1 & 2>&1是指将标准错误重定向到标准输出,于是标准错误和标准输出都重定向到指定的out.txt文件中,从此终端彻底清静

Linux中后台执行任务

执行时, 可以在命令最后添加 & 使其后台执行, 但是其输出依然会显示, 而且其运行是和当前shell绑定的 如果脚本已经运行,  可以使用Ctrl-Z暂停, 然后使用 bg 让其转入后台, 再 disown 解除它和当前shell的关联, 例如: ^Z [1]+ Stopped make -j2 [[email protected] master]$ bg [1]+ make -j2 &# 注意: disown之后, 此任务将不出现于jobs, 也不能再转回前台 [[email prot