LoveUnix » PC Server & HPC » [挑战] 批处理高手挑战帖
让LU留住您的每

一天 让LU博客留住您的每一天
2007-7-16 22:55 oraix
[挑战] 批处理高手挑战帖

借色虫的宝地一用,摆个擂台.

最近写了不少windows批处理脚本, 雄心大增.
虽然windows出来了powershell 在向unix shell靠近, 但是毕竟是一个额外的软件. 通过系统的批处理功能已经能解决很多PC Server/Windows平台的功能.
大家在实际工作中, windows也是必不可少的要接触的系统, 学习批处理就像掌握unix shell一样, 可以事半功倍.
在此希望能在挑战中共同进步, 也发掘一下论坛中windows的人才, 哈哈. 一专多能

挑战第一贴:
如何生成一个以当前时间(包括日期和时间命名的文件)
编写成一个子程序, 带两个参数作为文件名的前缀和扩展名
这个有实用意义, 比如每次输出一个日志文件,
比如: prefix-20070716-230340.log
prefix和log是输入的参数
要求: 简短精炼, 健壮实用
平台: windows xp, windows 2003

希望回贴的人也出招.

[[i] 本帖最后由 oraix 于 2007-7-16 23:01 编辑 [/i]]

2007-7-18 01:37 oraix
1天啦,LU没有搞windows的看来

2007-7-19 16:19 argenw
累啊。哈哈。没人顶。

2007-7-21 22:01 oraix
没人顶, 自己定

看来没人应战,难道我是独孤求败了?哈哈

自己给个答案, 下面的片段可以做成子批处理:
:begin of bat============
@echo off
set filename=" "
set fd=%date:~0,10%
set fd=%fd:-=%
set ft=%time:~0,8%
set ft=%ft::=%

set filename=%1%fd%%ft%.%2
echo %filename%
:end of bat====================

说明:
%1 %2分别是前缀和 扩展名

可以显示一下生成的文件名字
echo %filename%
或者生成一个空文件:
echo. > %filename%

假设批处理文件名为genfile.bat
调用方式为
genfile.bat prefix log
输出文件名为:prefix20070721215929.log

2007-8-5 04:50 zhangyuner
呵呵 就会点简单的 循环发消息 嘿嘿
俺朋友到是搞了一个基于时间的批处理  对付网络执法官

2007-9-25 18:37 snowbow
...你该去msdn上脚本专家

2007-11-21 22:07 阿土
哈哈,顶起,非常感谢.:lu11:

2007-11-22 09:27 caiwen
这个。。。。。。基本都不懂的,学习了

2007-11-22 10:54 luchun0112
还是进来学习一下~~呵呵 ^_^

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.