转:Windows任务计划实现自动执行ArcGIS相关功能
今天一不小心点开了Windows任务计划,以前咩有怎么用过,发现还挺好用,于是想到了以前用户的一些问题
1:用户环境使用ArcSDE服务连接,每次运行到一定的负载量(可能是几天),就会很慢,用户就喜欢重启一下ArcSDE服务就可以解决了。
对该问题,我们不去探究用户的环境为什么会慢,既然他重启ArcSDE服务就可以解决问题,那么我们可以使用Windows的任务计划来执行以及写好的ArcSDE服务重启脚本,这样我们就可以定期重启ArcSDE服务来解决该问题了。
只需要写一个简单的bat文件即可
[python] view plaincopyprint?
- -- 关闭ArcSDE服务
- sdemon -o shutdown -i 5151 -p sde
- --等一些时间
- sleep(5)
- --启动ArcSDE服务
- sdemon-o start -i 5151 -p sde
-- 关闭ArcSDE服务
sdemon -o shutdown -i 5151 -p sde
--等一些时间
sleep(5)
--启动ArcSDE服务
sdemon-o start -i 5151 -p sde
这样就可以来解决用户问题了。
2:有些用户经常会使用GP工具来做一些相关的功能操作,可能有些东西就是机械的对数据进行操作,有些时候可能要等比较长的时间,那么用户就会咨询一下,我是否可以使用自动化的功能,定时来执行相关的GP工具呢?
以前给用户的答复就是不可以,因为这些GP工具不能脱离ArcMap的进程,也就是必须在ArcMap里面执行,这样肯定不可以。
但是当时并没有考虑Python与GP工具的结合,我们完全可以将GP工具写道Python脚本里面来进行相关的批量操作啊!
我们将相关的GP环境比如数据源路径、名称、参数等都写在Python里面,到时候定期执行就可以了。
其实对ArcGIS来说,重复性、必要性的工作比较多
- 定期重建索引
- 定期版本压缩
- 定期分析数据
以下是一个重建索引的例子
[python] view plaincopyprint?
- from arcpy import *
- env.workspace=r'Database Connections\Connection to 192.168.100.111.sde'
- for dataset in ListDatasets():
- for fc in ListFeatureClasses("","ALL",dataset):
- RemoveSpatialIndex_management(fc)
- AddSpatialIndex_management(fc)
from arcpy import * env.workspace=r'Database Connections\Connection to 192.168.100.111.sde' for dataset in ListDatasets():
for fc in ListFeatureClasses("","ALL",dataset):
RemoveSpatialIndex_management(fc)
AddSpatialIndex_management(fc)
通过查看任务计划可以查看相关任务是否允许完成或者有问题,如下图可以得到,是不能在非ArcMap环境下执行运行GP工具的

TIPS:对没有写过Python的用户其实并不需要担心什么,如果你有现成的Modelbuilder模型,那么可以使用Export to python Scripts来获得相关的python脚本即可


延伸学习:
在 Linux 中,创建一个 cron 文本文件,其中包含希望脚本运行的日期和时间信息,然后使用 crontab 程序将该文件加载到 cron 中。
例如,以下信息将 Python 脚本(名为 rsysidxdb2.py)设置为在每个星期三晚上 10:00 运行:
0 22 * * 3 /usr/bin/rsysidxdb2.py
有关 cron 的使用信息,请参阅随 Linux 安装提供的 Linux 手册页。
-------------------------------------------------------------------------------------------------------
版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!
------------------------------------------------------------------------------------------------------
转摘地址:http://blog.csdn.net/linghe301/article/details/9923511
转:Windows任务计划实现自动执行ArcGIS相关功能的更多相关文章
- 在WINDOWS任务计划程序下执行PHP文件 PHP定时功能的实现
最近需要做一个定时任务功能,从网站找了很多相关的代码,windows实现方法综合起来大概就两种, 一.使用PHP ignore_user_abort 函数 即使关掉浏览器也能正常运行:(个人感觉PHP ...
- windows 10 如何设定计划任务自动执行 python 脚本?
我用 python 写了一些脚本,有一些是爬虫脚本,比如爬取知乎特定话题的热门问题,有一些是定期的统计分析脚本,输出统计结果到文档中.之前我都是手动执行这些脚本,现在我希望如何这些脚本能自动定时执行. ...
- windows下设置计划任务自动执行PHP脚本
背景: 环境部署在linux下或者windows中,可以使用windows的自动任务设置自动执行脚本执行一些日常运维任务 图形界面设置相对比较简单 准备工作: wamp(集成的PHP执行环境) 已经写 ...
- 转 Windows 7设置定时自动执行任务方法
在使用电脑的时候可能会遇到一些需要无人值守让电脑自行执行任务后定时关机的情形,在Win7系统中,我们可以使用"任务计划"设置功能结合 shutdown命令灵活设置任务计划,让Win ...
- 使用windows任务计划程序自动清除C盘缓存文件
背景 由于应用程序会不断的产生各种临时文件和缓存文件,我们的C盘有时候不知不觉就被填满了,因此,配置一个自动清除缓存文件的脚本势在必行了. 功能 自动删除C盘的缓存和临时文件 隐藏执行时的CMD窗口 ...
- Windows通过计划任务定时执行bat文件
第一步 第二步 第三步 第四步 第五步 第六步
- 定时备份服务器数据库(借助windows任务计划以及mysqldump)
最近社区多了,考虑到数据的安全性,要每天备份一次数据库,以防万一: linux目前还不是很了解,先用windows的计划任务吧: 大体思路就是 借用windows的计划任务来执行备份远程数据库到本地: ...
- Spring Boot中自动执行sql脚本
说明:所有的代码基于SpringBoot 2.0.3版本 背景 在应用程序启动后,可以自动执行建库.建表等SQL脚本.下文中以要自动化执行people.sql脚本为例说明,脚本在SpringBoot工 ...
- Windows Server 2008 任务计划无法自动运行的解决办法
问题:编写的bat脚本,直接执行,成功:但是在任务管理器中配置该任务,运行不成功,结果显示为:0x1,系统环境为 Windows Server 2008. 分析:bat任务没有调用执行. 解决方案: ...
随机推荐
- SQL基础(一)
经过这段时间对SQL的基础学习,下面对自己的学习做个总结或者也可以说是个回顾吧! 我练习的是在oracle数据库平台上,并且安装了PLSQL Developer工具.下面是我从小白开始一路学习的回顾: ...
- 【BZOJ2438】[中山市选]杀人游戏 Tarjan+概率
[中山市选]杀人游戏 Tarjan+概率 题目描述 一位冷血的杀手潜入\(Na\)-\(wiat\),并假装成平民.警察希望能在\(N\)个人里面,查出谁是杀手.警察能够对每一个人进行查证,假如查 ...
- c++将文件之间编译关系降到最低
类的定义式:类的定义,可以知道类的大小 类的实现: 类的声明:类的声明,表明,使用此类,编译不会出错 C++并没有把“将接口从实现中分离”做得很好.Class的定义式不只详细叙述了Class接口,还包 ...
- c#静态变量赋值问题
class Program { static int i = getNum(); int j = getNum(); ; static int getNum() { return num; } sta ...
- POJ1664 放苹果 (母函数)
放苹果 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 37515 Accepted: 23090 Description ...
- excle导出使用poi
package com.ittax.core.util; import java.util.List; import javax.servlet.ServletOutputStream; import ...
- springmvc htmlEscape标签的作用
有些东西自己不知道就想要弄明白 唉 做项目 看人家项目中用到啦 不会 不知道 就百度啦 整理了一下 方便自己记忆 一.SpringMVC 表单元素标签 如下: <form:textarea ...
- HP EliteBook 8570p TouchPad Issue
最近更换了笔记本,当时TouchPad总是不能用,有个指示灯总是亮着:同事同型号的就没有这样的问题. Google了好久终于找到了一篇帖子能解决我的问题.分享给朋友们. Link: http://h3 ...
- 自定义Razor 标签
1.首先需要一个abstract class WebViewPage<T> ,继承系统的 System.Web.Mvc.WebViewPage<TModel> 再定义一个Web ...
- 实时同步sersync
1.1 sersync+rsync实现实时同步过程 第一个历程:安装sersync软件 将软件进行下载,上传到系统/server/tools目录中 下载软件地址:https://github.com/ ...