中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-30 03:46
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » [求助]关于文本为空等问题 查看 693 回复 6
楼 主 [求助]关于文本为空等问题 发表于 2006-04-01 22:43 ·  中国 广东 东莞 电信
新手上路
积分 18
发帖 5
注册 2005-12-17 16:32
20年会员
UID 47336
状态 离线
怎么能用批处理实现"判断某个文本为空,如果是空的,就删除这个文本,否则取文本里头几个字符日期和系统日期时间比较,如果比系统时间少一天,就写入某些数据"(文本的日期内容2006-04-01)
小弟在线等!!望高手指点!!谢谢!!
(我的系统为win xp sp2)


[ Last edited by tol on 2006-4-2 at 07:29 ]
2 发表于 2006-04-01 22:47 ·  中国 河北 保定 移动
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
if %a%#==# 则%a%为空。

后一个问题,需要根据批处理的运行环境来处理。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
3 发表于 2006-04-01 23:01 ·  中国 广东 东莞 电信
新手上路
积分 18
发帖 5
注册 2005-12-17 16:32
20年会员
UID 47336
状态 离线
怎么处理,偶想知道,麻烦,Climbing说说,好吧?
4 发表于 2006-04-01 23:12 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线
早睡早起身体好。。
睡前给你点建议。
问问题前把自己的运行环境说清楚,你是dos下还是命令提示符下?什么系统?
ps:若问题1是想判断某个文件是否为空的话可以dir 某个文件 | find "0 字节"。
5 发表于 2006-04-02 00:44 ·  中国 辽宁 锦州 中移铁通
荣誉版主
★★★
积分 1,338
发帖 356
注册 2005-07-15 12:09
20年会员
UID 40733
性别 男
状态 离线
第一个问题可以尝试下面的命令

for %i in (*.*) do @if "%~zi"=="0" del %i

第二个问题,与系统日期时间比较的是文件的日期还是文本的内容?
如果是后者你最好给出给出文本的具体实例,不然不好说怎么完成。
  ☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul

6 发表于 2006-04-02 13:49 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线

dir c:\a.txt | find " 0 字节"
goto %errorlevel%

:1
set /p ddd=<a.txt
set num1=%date:~0,4%%date:~5,2%%date:~8,2%
set num2=%ddd:~0,4%%ddd:~5,2%%ddd:~8,2%
set /a num = num1 - num2
if %num% == 1 echo 这里是要附加的内容 >>a.txt
goto :eof

:0
del a.txt


要求,日期必须在文件开头,如果不在开头自行修改。
7 发表于 2006-04-03 19:59 ·  中国 广东 东莞 电信
新手上路
积分 18
发帖 5
注册 2005-12-17 16:32
20年会员
UID 47336
状态 离线
有其它方法吗?
论坛跳转: