导航:首页 > IDC知识 > 服务器定时任务

服务器定时任务

发布时间:2020-09-09 19:51:13

1、如何查看linux系统的所有用户的定时任务

crontab -l -u XXX 列出XXX用户的所有定时任务,如有没有会提示 no crontab for XXX
没有直接查看所有用户的命令只能一个一个来查。
cat /etc/passwd |cut -f 1 -d :
此命令列出所有用户。系统学习Linux,详情参考《Linux就该这么学》。

2、服务器定时执行服务的时间间隔能不能设置

计划任务里可以设置的!

3、游戏服务器定时任务大家是通过什么方式实现的

这个是我在网上找的不知道是不是你要的:

java定时任务Timer 关于定时任务,似乎跟时间操作的联系并不是很大,但是前面既然提到了定时任务,索性在这里一起解决了。设置定时任务很简单,用Timer类就搞定了。一、延时执行首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行。代码如下:
package test;
import java.util.Timer;
public class TimeTaskTest {
public static void main(String[] args){ Timer timer = new Timer();
timer.schele(new Task(), 60 * 1000);
}
}
解释一下上面的代码。上面的代码实现了这样一个功能,当TimeTask程序启动以后,过一分钟后执行某项任务。很简单吧:先new一个Timer对象,然后调用它的schele方法,这个方法有四个重载的方法,这里我们用其中一个,
public void schele(TimerTask task,long delay)
首先,第一个参数第一个参数就是我们要执行的任务。这是一个TimerTask对象,确切点说是一个实现TimerTask的类的对象,因为TimerTask是个抽象类。上面的代码里 面,Task就是我们自己定义的实现了TimerTask的类,因为是在同一个包里面,所以没有显性的import进来。Task类的代码如下
package test;
import java.util.TimerTask;
public class Task extends TimerTask { public void run()
{
System.out.println("定时任务执行");
}
}
我们的Task必须实现TimerTask的方法run,要执行的任务就在这个run方法里面,这里,我们只让它往控制台打一行字。第二个参数第二个参数是一个long型的值。这是延迟的时间,就是从程序开始以后,再过多少时间来执行定时任务。这个long型的值是毫秒数,所以前面我们的程序里面,过一分钟后执行用的参数值就是 60 * 1000。二、循环执行设置定时任务的时候,往往我们需要重复的执行这样任务,每隔一段时间执行一次,而上面的方法是只执行一次的,这样就用到了schele方法的是另一个重载函数public void schele(TimerTask task,long delay,long period)
前两个参数就不用说什么了,最后一个参数就是间隔的时间,又是个long型的毫秒数(看来java里涉及到时间的,跟这个long是脱不了干系了),比如我们希望上面的任务从第一次执行后,每个一分钟执行一次,第三个参数值赋60 * 1000就ok了。三、指定执行时间既然号称是定时任务,我们肯定希望由我们来指定任务指定的时间,显然上面的方法就不中用了,因为我们不知道程序什么时间开始运行,就没办法确定需要延时多少。没关系,schele四个重载的方法还没用完呢。用下面这个就OK了:
public void schele(TimerTask task,Date time)
比如,我们希望定时任务2006年7月2日0时0分执行,只要给第二个参数传一个时间设置为2006年7月2日0时0分的Date对象就可以了。有一种情况是,可能我们的程序启动的时候,已经是2006年7月3日了,这样的话,程序一启动,定时任务就开始执行了。schele最后一个重载的方法是public void schele(TimerTask task,Date firstTime,long period)
没必要说什么了吧:)四、j2ee中的定时任务在实际的项目中,往往定时任务需要对web工程中的资源进行操作,这样一来,用上面的单个程序的方式可能就有点力不从心了,因为很多web工程的资源它操作不到。解决的办法是,使用Servlet,把执行定时任务的那些代码放到Servlet的init()函数里就可以了,这个easy,就没有必要再写示例代码了吧

4、服务器windows2012 r2系统定时计划任务怎么停止

在开始-运行里面输入:shutdown.exe -a
像服务器定时重启功能都是靠shutdown程序来完成的
如果你又想恢复到原来的样子:如在每天24:00钟重启一次,可以在开始运行里面输入:
at 24:00 /every:Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday shutdown /r /t 0 表示在星期一到星期六的每天00:00点钟会自动重启一次,"/t 0"表示将倒计时默认的30秒改为0秒。
或者可写为:at 24:00 /every:Su,M,T,W,Th,F,Sa shutdown /r /t 0

5、定时任务部署在多台服务器中怎么解决

quartz和timer都不是针对集群的,都是单机的框架,而且他们的作用是负责定时执行,你要只执行一次,这是你自己的应用逻辑,应该自己控制

6、批处理文件,服务器定时任务的设置

@echo off
set file=服务器文件路径
set dir=本地保存路径

schtasks /create /tn "CopyFileFromServer" /tr "%ComSpec% /c copy /y "%file%" "%dir%"" /sc WEEKLY /d FRI /st 22:00 /f
pause

7、如何在windows服务器上面创建定时任务

1,打开VS2013,选择文件->新建->项目。
2,在项目中找到【windows服务】项目,重新命名后点击确定。
3,在service1设计器中点击右键,选择查看代码,进入代码页面。
4,在代码编辑器中添加【OnStart】服务启动方法。
5,继续在代码编辑器中添加【ChkSrv】方法。
6,继续在代码编辑器中添加你需要定时执行的任务方法。
7,继续在代码编辑器中添加【WriteLog】书写日志的方法。
8,继续在代码编辑器中添加【OnStop】服务停止方法。
添加安装程序
1,在service1中的设计器中点击右键,选择【添加安装程序】。

2,在安装程序中选中【serviceProcessInstaller1】,查看其属性,将【Account】值改为【LocalSystem】。

3,在安装程序中选中【serviceInstaller1】,查看其属性,将【ServiceName】值改为你想要的服务名称。
启动Windows服务
选中项目,右键,生成项目。
然后在debug目录中找到生成的程序。

8、怎么在windows服务器上面创建定时任务

在Linux上面运行java程序要比在windows上面跑稳定很多,但是总有些情况下我们的程序跑在了windows上面,这就需要我们对windows server有所了解。今天给大家介绍下如何在windows服务器上面创建定时任务来定时执行java程序。

Windows的有点就是可视化,操作简单,下面一步步为大家演示一下。 
1,首先我们在控制面板中找到“管理工具”,如下图所示: 

2,然后我们打开管理工具,找到其中的“任务计划程序”,如下图所示: 

3,打开任务计划程序,如下图所示: 

4,右击选择“创建基本任务”,这个向导很多简单,适合初学者。如下图所示: 
 
第一步写上任务名称就可以了,然后点击next。

5,接下来是设置触发器,就是什么时候执行,如下图所示: 
 

6,下一步我们设置任务执行什么操作,如下图所示: 

我们选择需要执行的bat文件, 
 
“起始于”选项中一定要填写jar文件的路径,否则会报“Error: Unable to access jarfile”的错误。

7,最后点击“完成”就可以成功创建任务了。 

如果需要在某段时间里面循环执行程序,那我们可以修改触发器的执行时间,如下图所示: 
 
这里我们可以设置两个小时内每5分钟执行一次。

这样到点就会执行我们的java程序,我做这个是用于批量处理数据的。

9、datastage在Windows服务器上怎么定时执行job

在B服务器上做计划任务,添加计划任务脚本,写个批处理,内容包含从系统时间取值建立文件夹;然后从A服务器的该web文件夹设置共享,共享给有读取权限的用户名密码要记录下来,这里用A和P分别表示;脚本内容如下:
@echo off
net use \\A服务器IP或者名称\共享文件夹 "p"/user:A
set m=%date:~0,4%%date:~5,2%%date:~8,2%
xcopy \\A服务器IP或者名称\共享文件夹\*.* 本地存放的文件夹目录\%m% /s /e /i

给个范例:
@echo off
net use \\server\web "password"/user:account
set m=%date:~0,4%%date:~5,2%%date:~8,2%
xcopy \\server\web\*.* d:\files\%m% /s /e /i /y
这个就是将server\web目录下的所有文件文件夹 拷贝到本地 d盘 files目录下的根据当天日期生成的文件夹中(今天就是 d:\files\20140116)
注意这个命令是覆盖式拷贝,同名文件直接就覆盖了哈

使用net use 映射磁盘,提示:发生系统错误5 拒绝访问解决方案:更改目标计算机的设置。组策略——计算机配置——Windows设置——安全设置——本地策略——安全选项 将 “网络访问:本地帐户的共享和安全模式” 改为经典

打了好多字,望采纳

再多完善一下,如果你的服务器有默认的共享,比如 D$ 等,并且你的web文件夹在该盘符上,那么你可以不用给web文件夹设置共享,可以直接 net use \\server\D$ “p”/user:A 来建立通道,其中 A和P分别是server服务器上对D盘有访问权限的用户,一般建议直接用server的管理员账户密码,或者在A服务器上新建一个对D盘有访问权限的用户即可。该语句可改为:
@echo off
net use \\server\d$ "password"/user:account
set m=%date:~0,4%%date:~5,2%%date:~8,2%
xcopy \\server\d$\web\*.* d:\files\%m% /s /e /i /y

这样做的好处是,利用服务器自带的默认共享,而不用专门设置web文件夹共享了。如果你的服务器/域内安全策略关闭了盘符的默认共享,那么只有建立web文件夹的共享了。

与服务器定时任务相关的知识