unbuntu 启动任务脚本_Ubuntu下服务启动脚本编写

像Nginx、MySQL等服务一样,在后台运行自己编写的抓取天气信息的Python脚本。

1.以管理员权限新建一个服务脚本文件

sudo vim /etc/init.d/weather_service

2.用下列模板修改该服务脚本文件

#!/bin/bash

### BEGIN INIT INFO

#

# Provides: weather_service

# Required-Start: $local_fs $remote_fs

# Required-Stop: $local_fs $remote_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: initscript

# Description: This file should be used to construct scripts to be placed in /etc/init.d.

#

### END INIT INFO

## Fill in name of program here.

PROG="weather_service.py" ##可执行文件的名字,这里是.py脚本,记得在Python文件头加上“#!/usr/bin/env python”就可以像运行可执行文件一样直接运行py脚本

PROG_PATH="/service/weather/" ##可执行文件所在的目录

PROG_ARGS="" ##程序启动的各参数

PID_PATH="/var/run/" ##PID文件保存的路径,用户判断是否服务已经启动

start() {

if [ -e "$PID_PATH/$PROG.pid" ]; then

## Program is running, exit with error.

echo "Error! $PROG is currently running!" 1>&2

exit 1

else

## Change from /dev/null to something like /var/log/$PROG if you want to save output.

$PROG_PATH/$PROG $PROG_ARGS 2>&1 >/var/log/$PROG &

pid=`ps ax | grep -i 'weather_service.py' | sed 's/^\([0-9]\{1,\}\).*/\1/g' | head -n 1` ##过滤ps命令的结果,得到weather_service的进程ID

echo "$PROG started"

echo $pid > "$PID_PATH/$PROG.pid"

fi

}

stop() {

echo "begin stop"

if [ -e "$PID_PATH/$PROG.pid" ]; then

## Program is running, so stop it

pid=`ps ax | grep -i 'weather_service.py' | sed 's/^\([0-9]\{1,\}\).*/\1/g' | head -n 1`

kill $pid

rm -f "$PID_PATH/$PROG.pid"

echo "$PROG stopped"

else

## Program is not running, exit with error.

echo "Error! $PROG not started!" 1>&2

exit 1

fi

}

## Check to see if we are running as root first.

## Found at http://www.cyberciti.biz/tips/shell-root-user-check-script.html

if [ "$(id -u)" != "0" ]; then

echo "This script must be run as root" 1>&2

exit 1

fi

case "$1" in

start)

start

exit 0

;;

stop)

stop

exit 0

;;

reload|restart|force-reload)

stop

start

exit 0

;;

**)

echo "Usage: $0 {start|stop|reload}" 1>&2

exit 1

;;

esac

3.添加服务

sudo update-rc.d weather_service defaults

4.启动服务

sudo service weather_service start

5.停止服务

sudo service weather_service stop

6.删除服务

sudo update-rc.d -f weather_service defaults

最后编辑:2019-08-28作者:Searky

9727d4b1790c557c8c4156ca56eafd4d.png

这个作者貌似有点懒,什么都没有留下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/373475.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS开发工具——网络封包分析工具Charles

作者 唐巧 发布于 2013年12月9日 | 1 讨论 分享到:微博微信FacebookTwitter有道云笔记邮件分享稍后阅读我的阅读清单简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要…

Java Web托管选项流程图

我经常被问到的一个问题是在何处以及如何托管Java Web应用程序。 可以在带有嵌入式服务器的Eclipse中创建它很好,但是如何将它带给人们呢? 长期以来,对于发烧友的程序员一直没有答案。 只有昂贵和超大型的选择。 事情最近变了,但这…

查找出系统中大于50k 且小于100k 的文件并删除。

查找出系统中大于50k 且小于100k 的文件并删除。 [rootxusx xxx]# ll -lhtotal 624K-rw-r--r-- 1 root root 576K Nov 30 21:39 1.txt-rw-r--r-- 1 root root 48K Nov 30 21:40 2.txt [rootxusx xxx]# find ./ -type f -size 1k -a -size -100k ./2.txt 转载于:https://www.cnb…

vb.net mysql存储图片_怎么让VB.NET 上传图片到SQL 数据库只保存路径,图片保存到文件...

我的前台代码dimCoonAsSqlClient.SqlConnectiondimRsAsNewSqlClient.SqlCommandRs.ConnectionCoonRsNewSqlClient.SqlCommand("上传图片",Coon)Rs.CommandTypeCommandType.StoredPr...我的前台代码 dim Coon As SqlClient.SqlConnection dim Rs As New SqlClient.Sql…

[国嵌攻略][132][串口驱动实现]

如何开发Linux驱动程序 一般情况下都会有现成的驱动程序,不需要从零开始开发驱动程序。所以Linux驱动开发主要分为两个步骤:1.读得懂驱动程序;2.写的了核心功能。 发送中断处理程序 发送中断处理函数在/drivers/serial/samsung.c的s3c24xx_se…

使用Regions ADF 11g进行Master Detail CRUD操作

你好 此示例演示了如何使用Regions在表之间创建Master Detail关系。 区域的主要目的是可重用性的概念。 使用区域和有限的任务流,我们可以将页面重用到许多其他页面中,以保持相同的功能并采用更简洁的方法。 下载示例应用程序。 在此示例中,…

[转] vim自定义配置 和 在ubnetu中安装vim

Ubuntu 12.04安装vim和配置 问题: ubuntu默认没有安装vim,出现: jygubuntu:~$ vim test.cThe program vim can be found in the following packages: * vim * vim-gnome * vim-tiny * vim-athena * vim-gtk * vim-noxTry: sudo apt-get insta…

win7 mysql php apache myadmin_windows下Apache+mysql+php+phpMyAdmin的安装及配置 | 学步园

1、下载Apache ( httpd-2.2.25-win32-x86-no_ssl.msi )http://httpd.apache.org/download.cgi#apache24根据提示安装到路径(建议自定义路径),NetWork Domain和Server Name都输入 localhost(访问时使用的域名);2、下载mysql (mysql-5.5.34-win32.msi )http://dev.m…

(15) PHP 随笔---LAMP Linux基本操作 对文件、目录的操作

◇对目录的操作: ◇创建目录: mkdir Xmu //在当前目录下创建一个名为Xmu的目录 ◇创建多个级别目录关系: mkdir -p newdir/newdir/newdir //在当前目录下创建多个连续目录,-p的意思是以递归的方式 ◇移动目录(也可以针对…

具有NetBeans,嵌入式GlassFish,JPA和MySQL数据源的Arquillian

这是一个偶然的帖子。 我一直在研究交易CDI观察者,并尝试使用嵌入式GlassFish对它进行一些集成测试。 但是令人惊讶的是,这种方法不能很好地工作,我仍在弄清楚,使用普通的嵌入式GlassFish时问题出在哪里。 同时,我转到…

hmcl手机版下载_最新HMCL下载地址

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼[16:49:27][AWT-EventQueue-0/ERROR]---- Hello Minecraft! Crash Report ----Version: 2.3.1Time: 2016-7-14Thread: Thread[AWT-EventQueue-0,6,main]Advice:无建议。Content:java.lang.IllegalStateException: Buffers have not…

为什么我会在2012年的新企业Java项目中使用Java EE而不是Spring

这个问题经常出现。 我的新项目也在2011年11月发布。 在这个新的Enterprise Java项目中,我将使用Java EE(JEE)代替Spring框架。 我知道:关于此主题的文章,博客和论坛讨论都可以找到。 为什么还需要一个? 因…

jsp mysql 音乐网站_Maven+JSP+SSM+Mysql实现的音乐网站

项目简介本系统基于MavenJSPSSMMysql实现的音乐网站。主要实现的功能有音乐播放、下载、上传等几个模块。难度等级:中等技术栈编辑器Eclipse Version: 2020-03 (4.15.0)前端技术基础:htmlcssJavaScript框架:JQueryBootstrap后端技术SpringSpr…

遥感影像滤波处理软件 — timesat3.2

最近因为要做遥感影像的滤波处理,经过女神推荐,决定用Timesat,可是该软件3.1版本只适合xp系统以及2011的matlab,后来在官网上找到了最新的3.2版本。支持64位操作系统以及2014的matlab。大家可以直接上官网(http://www.…

持久化API(JPA)系列(三)实体Bean的开发技术-建立与数据库的连接

在EJB 2.x中。EJB有3种类型的Bean。各自是会话Bean(Session Bean)、消息驱动Bean(Message-Driven Bean)和实体Bean(Entity Bean)。 随着EJB 3的推出,EJB2.x中的实体Bean逐渐被JPA规范所替代&…

WebSphere Classloader内存泄漏预防

解决应用程序类加载器泄漏 应用领域 倾向于: 使用应用程序类加载器中的Runnable实现启动新线程。 即使JEE编程模型不支持此功能,客户也经常直接创建新线程或通过使用间接创建它们 计时器 客户必须确保在停止相应的应用程序(或WAR模块&…

airflow sql_alchemy_conn mysql_airflow使用mysql数据库,LocalExecutor并发调度

mysql-airflow在mysql上执行create database airflow; —— 创建数据库GRANT all privileges on airflow.* TO airflow% IDENTIFIED BY 123456; —— 将数据库airflow的所有权限授权airflow用户,密码123456且该用户可在任何IP段登录操作FLUSH PRIVILEGES; —— 刷新…

【SAP业务模式】之ICS(四):组织单元的配置

SAP的ICS业务后台配置主要有以下几个配置点: 1、组织单元的配置(公司代码、销售组织、工厂、采购组织等); 2、主数据的部分; 3、订单和开票的定价过程; 4、开票输出类型; 5、公司间发票的配置&a…

poj-2478 Farey Sequence(dp,欧拉函数)

题目链接&#xff1a; Farey Sequence Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 14230 Accepted: 5624Description The Farey Sequence Fn for any integer n with n > 2 is the set of irreducible rational numbers a/b with 0 < a < b < n a…

Twitter4j和Esper:在Twitter上跟踪用户情绪

对于复杂事件处理和Twitter API的新手&#xff0c;我希望这是一个简短的教程&#xff0c;可以帮助他们Swift起步。 管理大数据并从中挖掘有用的信息是当前技术中最热门的讨论主题。 来自Twitter&#xff0c;Facebook和Linkedin等社交网络的半结构化数据的爆炸式增长使Hadoop&am…