Board logo

标题: 请问可以自动生成按数字递增的文件名吗? [打印本页]

作者: mp3down     时间: 2006-12-9 07:57    标题: 请问可以自动生成按数字递增的文件名吗?

要求用户输入一段文字,按下Ctrl+Z后,即自动将这段文字保存成TXT文件,文件名由001开始,若001.TXT已经存在,则以002.TXT保存,若002.TXT也存在,则以003.TXT保存,若.....总之递增下去,BAT可以做吗?
作者: lxmxn     时间: 2006-12-9 08:12

  汗一个先。

  用户输入一段文字?在哪里输入啊?文本文件中输入?命令行中输入?批处理文件里面输入?QQ里面输入?

  再汗一个。

作者: namejm     时间: 2006-12-9 08:16
  按 ctrl+z ?批处理不是图形界面程序,无法接收如此复杂的按键指令,楼主发帖前请三思。
作者: lxmxn     时间: 2006-12-9 09:12

@echo off&setlocal enabledelayedexpansion
set/a n=1
:redo
if exist 00!n!.txt (set/a n+=1 && goto redo)
echo 请输入你的文字:
copy con 00%n%.txt

作者: 9527     时间: 2006-12-9 22:09
@echo off&setlocal
set /a n=1
:loop
if exist 00%n%.txt (set /a n+=1&& goto loop)
copy con 00%n%.txt


其实这样就可以啦,因为LZ需要CTRL+Z来保存,意思就是COPY CON的结束,或者按F6也是同样的效果,提醒lxmxn兄一下,其实判断用不着延迟环境变量
作者: zh159     时间: 2006-12-9 22:33
在&/&&连接的同一行命令或者fo等循环脚本里才使用延迟环境变量,其他独立行可以不用
作者: redtek     时间: 2006-12-9 22:36
真是精彩~~~
大家可以用它写《电子日记》了~:)
作者: zh159     时间: 2006-12-9 23:00


  Quote:
Originally posted by redtek at 2006-12-9 09:36:
真是精彩~~~
大家可以用它写《电子日记》了~:)


@echo off
:loop
for /f %%i in ('Time/t') do set Time_=%%i
set Date_=%Date:~0,10%
set Date_=%Date_:-=%_%Time_::=%
if exist %Date_%.txt goto loop
echo.电子日记(%Date_%):
copy con %Date_%.txt

作者: qzwqzw     时间: 2006-12-9 23:58
嗯,想起原来在ms-dos下写过日记。

不过所有的日记都在一个文件里,叫做notebook.txt;

每天的日记都写到一个新文件note.txt;

然后给每行加上日期标记后合并到notebook.txt;

这样我可以查阅某一天的日记,也可以看所有的日记。

但后来觉得自己真得很傻,一天保存一个文件实现起来要简单得多。

可能当时是想节约一些磁盘空间吧。

一个文件占一个簇,对于80M的硬盘是有些奢侈了。
作者: redtek     时间: 2006-12-10 00:38
zh159兄8楼《电子日记本》代码有意思~:)
今天分儿加光了,等有分的时候定给兄补上~:)
作者: 3742668     时间: 2006-12-10 02:35
copy con 的方法太早了,对于我们xp时代的用户,可以有更多的选择,其中最常见的替代命令有:findstr ; more ; sort。
@echo off
    findstr .* >findstr.txt
    more >more.txt
    sort >sort.txt
    findstr .* | more | sort >all.txt
    more +3 | sort +3 1> all_arg.txt
   ....
相对copy con来说,它们可以利用参数来有选择性地过滤,排序。还可以通过>和>>来选择覆盖还是增加。
当然,copy /b xxx.txt + con bbb.txt也有它自己的用途。
作者: mp3down     时间: 2006-12-10 03:42


  Quote:
Originally posted by redtek at 2006-12-9 09:36 AM:
真是精彩~~~
大家可以用它写《电子日记》了~:)

真聪明!也真被你猜中一半。

感谢4楼lxmxn及5楼9527的回复使我的问题解决了!

还请各位达人帮忙一下我另一贴中的问题:“求助:判断是否存在一个以上同类型文件并按条件执行”,详见该贴。