存档

文章标签 ‘bat’,文章数:5

本文所示提取的Oracle环境变量用ORACLE_HOME作为代表!

在linux或者unix环境上,很容易得到Oracle数据库的环境变量信息,比如:查看ORACLE_HOME

[oracle@centos5 ~]$ echo $ORACLE_HOME
/u01/oracle/product/11.2

在windows上可能稍微麻烦些了。如果windows系统上安装了Oracle服务器的话,正常情况下是有ORACLE_HOME这个环境变量的。

C:\>echo %oracle_home%
e:\oracle\db_1

将环境变量oracle_home赋值给其它变量用:set abc="%oracle_home%"

如果Oracle服务器的环境变量配置不正确或者只安装了Oracle客户端程序的话,本文将给出提取ORACLE_HOME的方法。

提取注册表使用的命令为:reg query 或者 reg export,命令语法为:

REG QUERY KeyName [/v ValueName | /ve] [/s]

REG EXPORT KeyName FileName

查看命令的具体参数,使用:reg export /? 或者 reg query /?

纠结了很久了。最近在研究7z的时候,才知道如何使用cmd下的date和time

例如我要生成一个D盘下的200909文件夹,

代码:

MD D:\%date:~0,4%%date:~,2%

time和date的用法类似。。。。。就不列举了。给大家一个参考

境变量替换已如下增强:  

%PATH:str1=str2%  

  会扩展   PATH   环境变量,用   "str2"   代替扩展结果中的每个   "str1"。要有效地从扩展结果中删除所有的   "str1","str2"   可以是空的。"str1"   可以以星号打头;在这种情况下,"str1"   会从扩展结果的开始到   str1   剩余部分第一次出现的地方,都一直保持相配。也可以为扩展名指定子字符串。  

%PATH:~10,5%  

  会扩展   PATH   环境变量,然后只使用在扩展结果中从第   11   个(偏移量10)字符开始的五个字符。如果没有指定长度,则采用默认值,即变量数值的余数。如果两个数字(偏移量和长度)都是负数,使用的数字则是环境变量数值长度加上指定的偏移量或长度。  

%PATH:~-10%  

  会提取   PATH   变量的最后十个字符。  

%PATH:~0,-2%  

     会提取   PATH   变量的所有字符,除了最后两个。但是需要注意window 2000和xp有一定的区别,自己去体会!

转自:http://blog.csdn.net/gltianwen/archive/2009/09/07/4527420.aspx

在数据库备份策略中,因为磁盘空间所限,需要删除N天前的备份文件。

本博客中有篇:实现连续N次备份数据库的脚本

其中有删除七日前的数据库备份文件的命令。那篇博客中利用了vbs处理日期的方法。但是,有点不妥当的地方,假如近七日内没有备份成功,或者说近七日内没有任何备份文件。如果删除了七日前的备份文件,那么就没有任何一个有效的备份文件了。这在数据库备份策略中是尤其需要注意的。

 

下面的命令不仅仅能够删除4天前的备份文件,而且能够保证有4天的备份文件。说白了也就是保留4份备份文件。呵呵。

del /f d:\123.txt && FOR /F "usebackq tokens=1,2,3*" %i IN (`dir E:\oracle\oradata\orcl /A-D /O-D ^| find ":"`) DO @echo %i %j=%l >>d:\123.txt
for /F "usebackq skip=5 delims== tokens=1*" %i in (d:\123.txt) do echo del /f %j

 

注释:skip=5表示跳过前4行记录。d:\123.txt是保存临时数据的文件,可以改成其他,比如: %temp%\123.txt

目录E:\oracle\oradata\orcl为备份文件所在路径。

如果放在bat脚本文件中执行上面的2行命令。需要将 %i之类的替换成 %%i

将上面2行命令的第2行中加粗字体的echo去掉,就能够实现删除操作了。 为了保险起见,先打印出删除文件的语句。

另:关于for循环命令的用法可以参考:CMD命令行:for命令详解[转]

 

 

 

 

 

 

讲FOR之前呢,咋先告诉各位新手朋友,如果你有什么命令不懂,直接在CMD下面输入:
name /? 这样的格式来看系统给出的帮助文件,比如for /? 就会把FOR命令的帮助全部显示出来!当然许多菜鸟都看不懂....所以才会有那么多批处理文章!!!!俺也照顾菜鸟,把FOR命令用我自己的方式说明下!
正式开始:

一、基本格式
FOR %%variable IN (set) DO command [command-parameters]
   %%variable   指定一个单一字母表示可替换的参数。
   (set)    指定一个或一组文件。可以使用通配符。
   command 指定对每个文件执行的命令。
   command-parameters
         为特定命令指定参数或命令行开关。
参数:FOR有4个参数 /d /l /r /f 他们的作用我在下面用例子解释
现在开始讲每个参数的意思

二、参数 /d
FOR /D %%variable IN (set) DO command [command-parameters]
如果集中包含通配符,则指定与目录名匹配,而不与文件
名匹配。
如果 Set (也就是我上面写的 "相关文件或命令") 包含通配符(* 和 ?),将对与 Set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的

删除目录下的所有文件和子文件夹:

del /S 目录名

将一个目录拷贝到另外一个目录里,比如将D盘下的data文件夹拷贝到d:\sybase里面

D:\> xcopy /E /Y /I data sybase\data

使用密码 ZaBaToAd 来将文件夹“games”的内容添加到压缩文件“secret”

rar a -pZaBaToAd -r secret games\*.*

将文件分割压缩    将文件e:\andkylee_dat.dat压缩,每个2M进行分割,压缩级别为3(标准)

"c:\Program Files\winrar\rar" a -v2000k -m3 e:\andkylee e:\andkylee_dat.dat

命令行配置telnet服务的启动状态为:手动

sc config tlntsvr start= demand

从命令行启动telnet服务

sc start tlntsvr

配置telnet服务器的最大并发用户连接数为:10

tlntadmn config maxconn= 10

配置telnet服务器空闲会话不超时

tlntadmn config timeoutactive=yes

------------------------------------------------------------------------------

telnet服务tlntadmn命令的端口设置   http://network.51cto.com/art/201007/212864.htm

    下面我们对tlntadmn的命令对Telnet服务的端口设置问题进行一下介绍。那么具体的内容就让我们来详细看一下吧。

telnet可以帮助我们完成远程的登录设置,那么管理员如何对端口认证等系统进行管理呢?这里我们就来介绍一下tlntadmn 命令的用法。这个命令可以帮助我们完成telnet服务的这些设置。那么,tlntadmn是telnet服务的设置命令,可以对telnet服务的端 口、认证方式等进行设置:

用法: tlntadmn [computer name] [common_options] start | stop | pause | continue | -s | -k | -m | config config_options
所有会话用 'all'.

 -s sessionid      列出会话的信息.  

-k sessionid      终止会话.  

-m sessionid      发送消息到会话.  

config            配置Telnet服务器参数.  

  common_options :  

 -u user                           指定要使用其凭据的用户  

-p password                       用户密码  

config_options :  

dom = domain                      设定用户的默认域  

ctrlakeymap = yes|no              设定 ALT 键的映射  

timeout = hh:mm:ss                设定空闲会话超时值   

timeoutactive = yes|no            启用空闲会话.  

maxfail = attempts                设定断开前失败的登录企图数.  

maxconn = connections             设定最大连接数.  

port = number                     设定Telnet端口.  

sec = [+/-]NTLM [+/-]passwd       设定身份验证机构  

fname = file                      指定审计文件名.  

fsize = size                      指定审计文件的最大尺寸(MB).  

mode = console|stream             指定操作模式.  

auditlocation = eventlog|file|both         指定记录地点  

audit = [+/-]user [+/-]fail [+/-]admin     指定审计的事件 

 

使用的办法: