windows服务器:编写bat脚本,创建定时任务

需求说明:

  • windows server 2008 服务器 经常过一段时间就不能远程连接了,原因是连接太多,超了范围,如何保持正常的远程连接?
  • windows 服务器中安装了virtualbox虚拟机, 搭建了CDH 集群,但是每次开机不能自动开启virtualbox中的虚拟机

bat脚本基本命令:

::关闭打印具体执行的每一条命令
@echo off

:: ============if语句
if "a"=="a" (
     echo "yes...a=" a
) else  (
     echo "no !!=1"
)

:: ============for循环
::for %%I in (1 2 3) do echo %%I 
for %%I in (1,2,3 ) do echo %%I 
::搜索当前目录的所有文件
for %%i in (*.*) do echo "%%i"  

::请按任意键继续. . .
pause 

::定义变量
set a="hello world !"
echo %a%

::获取执行脚本时输入的参数: 0=>执行脚本的路径, 9为第9个参数	.....
echo %0% 
echo %1%
echo %2%

:: 获取命令的执行结果
if errorlevel 1 (
    echo "cmd  faild....."
) else (
    echo "cmd succeed  ....."
)

1, windows服务器:定时重启

  • 1,重启命令: shutdown.exe -r
  • 2 ,制作定时计划:如下图
    windows服务器:编写bat脚本,创建定时任务_第1张图片
    点击‘创建基本任务’: 选择对应的bat脚本或命令, 选择运行条件
    windows服务器:编写bat脚本,创建定时任务_第2张图片
    windows服务器:编写bat脚本,创建定时任务_第3张图片

2,开机启动:cdh集群的所有节点

  • 1,windows 开机启动 vritualbox 中的linux虚拟机
  • 2, linux虚拟机在/etc/rc.d/rc.local中:添加开机启动cloudera-scm-server 和agent的命令

vm_start.bat

echo "vm start  ==> " %date%  %time% >> C:\server-restart.log
echo "begin to start vbox vms......C:\vm_start.bat">> C:\server-restart.log
echo "********">> C:\server-restart.log

cd C:\"Program Files"\Oracle\VirtualBox  
:: 命令行启动vbox 的虚拟机
::--type  headless
VBoxManage.exe startvm "cdh1_cent6" --type headless
if errorlevel 1 (
    echo "vm1 start faild.....">> C:\server-restart.log
) else (
    echo "vm1 start succeed  .....">> C:\server-restart.log
)


VBoxManage.exe startvm "cdh2_cent6" --type headless
if errorlevel 1 (
    echo "vm2 start faild.....">> C:\server-restart.log
) else (
    echo "vm2 start succeed  .....">> C:\server-restart.log
)


VBoxManage.exe startvm "cdh3_cent6" --type headless
if errorlevel 1 (
    echo "vm3 start faild.....">> C:\server-restart.log
) else (
    echo "vm3 start succeed  .....">> C:\server-restart.log
)

vm_stop.bat

echo "vm stop at  ==> " %date%  %time% >> C:\server-restart.log
echo "begin to stop vbox vms......C:\vm_stop.bat">> C:\server-restart.log
echo "-------------------------------------------">> C:\server-restart.log

cd F:\app\open-ssh\bin
:: 命令行停止vbox 的集群
ssh [email protected] cdh.sh stop

if errorlevel 1 (
    echo "vm stop faild.....">> C:\server-restart.log
) else (
    echo "vm stop succeed  .....">> C:\server-restart.log
)

添加定时任务----> 触发器
windows服务器:编写bat脚本,创建定时任务_第4张图片

你可能感兴趣的:(windows-bat脚本)