批处理判断

本文最后更新于1年前(2019-8-26 14:29:03),链接可能失效,内容可能难以复现。请注意甄别。

1.判断系统架构

if "%PROCESSOR_ARCHITECTURE%"=="x86" goto x86
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" goto x64
exit
:x64
echo 64&goto eof
exit
:x86
echo 32&goto eof
exit
:eof
echo All done.

运行结果(64):

64
All done.

运行结果(32):

32
All done.

2.依次执行任务

@echo off

echo 正在激活Windows...

slmgr /skms kms.03k.org

start /w slmgr /ato

echo Product activation successful.(1/2)

echo 正在激活Office...

cd "C:\Program Files\Microsoft Office\Office16"

cscript ospp.vbs /sethst:kms.03k.org

cscript ospp.vbs /act

echo Product activation successful.(2/2)

pause

批处理获取系统时间

本文最后更新于1年前(2016-4-7 15:08:30),链接可能失效,内容可能难以复现。请注意甄别。

© Sunplace,2016

1.确定系统时间的显示格式,先使用以下批处理

echo %date%

pause

可能的结果:2016/04/07 周四

2.截断这个时间字符串

格式为:%date:~[开始的字符位置],[截取的字符数]%

改进之后的例子:

echo %date:~0,4%年%date:~5,2%月%date:~8,2%日

pause

可能的结果:2016年04月07日

3.一个应用实例

定时备份数据库(SQL):

rem *******************************Code Start***************************** 

@echo off  

set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%" 

"[MySQL安装路径]\bin\mysqldump" --opt -u [数据库用户名] --password=[数据库密码] [数据库名称] > [备份路径]\jsunplace_%Ymd%.sql 

rem *******************************Code End*****************************

可能的备份文件名称:jsunplace_20160407.sql

*开启定时功能需要配合计划任务

**以上的%date%%time%代替以表示时间。

用批处理文件开启服务

本文最后更新于1年前(2011-3-30 14:19:01),链接可能失效,内容可能难以复现。请注意甄别。
  2011-3-30 © Sunplace,2011
 

引言
最近安装了SQL Server和VMware Workstation,感觉开机很慢。
打开Windows的服务管理,将相关的服务设置为“手动”即可。下次开机就会默认不启动这些服务了。搜集了下面的两个小例子。启动服务的语句格式为:net start servername (这里的servername 指的是“服务名称”,而不是“显示名称”。可以在属性里查看。)用记事本输入以下阴影部分的代码,将.txt文件后缀名改为.bat,也可以直接保存为@SQL Server.bat,保存类型为“所有文件”。(文件名可以随意起)。保存为bat的文件,还可以右键“编辑”(使用记事本进行修改)。
通过对服务的管理,可以大大加快开机速度。服务想用的时候再手动启动,根本用不上的服务可以“禁用”。
@SQL Server.bat(SQL Server 2008 服务启动)

@echo off
net start MSSQLFDLauncher
net start MSSQLSERVER
net start SQLBrowser
net start MSSQLServerOLAPService
net start MsDtsServer100
net start ReportServer
net start SQLSERVERAGENT

@VMware.bat(VMware Workstation 7.1 服务启动)

@echo off 
net start ufad-ws60
net start VMAuthdService 
net start VMnetDHCP
net start "VMware NAT Service"
net start VMUSBArbService

# VMware NAT Service带有空格,所以需要用双引号(””)