[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

批处理一问一答 [ 第二篇 ] 文件操作

一问一答 [ 第一篇 ] 数值计算
http://www.bathome.net/thread-1880-1-2.html

规则同第一篇。
我问一个问题,楼下的人回答同时再出下一题。记住别忘了出题阿,出题不光是我一个人的事。

第一题:复制一个文件到别的目录,再打开或运行新目录中的文件。
    具体:复制 c:\windows 目录下的 NOTEPAD.EXE 到 d:\ 盘根目录下,然后运行 d:\ 盘下的这个它。

有兴趣的都来尝试。[ 不是新手就暂不答此题了 ]

[ 本帖最后由 wxcute 于 2010-1-12 21:31 编辑 ]
1

评分人数

楼上忘了出题了。

第二题:显示出你的音乐目录中所有 *.mp3 及 *.wma 格式的音乐文件,并输出到 musicList.txt 文件中。
只显示名字(文件名及扩展名),不需要完整路径;先显示再输出 或是 先输出再显示都可以。

说明:这种方法常被用来生成M3U播放列表。

TOP

for /r %MUSIC% %%g in (*.MP3 *.WMA) do echo %%~nxg>>MUSICLIST.TXT
1

评分人数

    • wxcute: 你这个光写入文件不显示吧PB + 1

TOP

for /r %MUSIC% %%g in (*.MP3 *.WMA) do echo %%~nxg>>MUSICLIST.TXT
IF EXIST MUSICLIST.TXT TYPE MUSICLIST.TXT
1

评分人数

    • wxcute: 为什么没人出题,我好痛苦。PB + 7

TOP

寻找在一资料夹中带有 我爱批处理 文字 的数字.TXT文件 ( 文件名称不含任何英文以及符号,如5633.TXT ),並且讓符合的文件列舉出來

TOP

楼上的描述不是很清楚,可否列出一些文件列表,举个例子。
  1. dir /a /d /b *.txt |findstr /s /i "我爱批处理"
复制代码
我出个题目,比较实用点的:

你下载了压缩文件1000个,需要相同的密码123来解压。写个批处理解决:
1

评分人数

    • wxcute: 你的题目倒是不错。 6 楼题目 8 楼有说明, ...PB + 4

TOP

FOR %%A IN ( "*.*" ) DO 7ZA E "%%~A" -P123 -O%%~A

这样?
  1. C:\123>DIR /B *
  2. 123456.TXT
  3. A45679.TXT
  4. 435.TXT
  5. BFE.TXT
  6. [123].TXT
  7. C:\123> TYPE 123456.TXT
  8. 床前明月光
  9. 我爱批处理
  10. 上述符合 文件名称只有数字.TXT , 内文含 "我爱批处理"
  11. C:\123> TYPE BFE.TXT
  12. 我爱批处理
  13. 床前明月光
  14. 上述不符合 文件名称含英文 , 内文符合 "我爱批处理"
  15. C:\123> TYPE [123].TXT
  16. 我爱批处理
  17. 上述不符合 文件名称含符号,内文符合 "我爱批处理"
  18. C:\123> TYPE 435.TXT
  19. 床前明月光
  20. 上述文件名称符合只带数字.TXT , 内文不符合 "我爱批处理"
复制代码
上述條件符合的只有123456.TXT

[ 本帖最后由 sylovanas 于 2008-11-11 21:21 编辑 ]
1

评分人数

    • wxcute: 7z 跟 rar 有区别,rar 可直接追加文件名。PB + 3

TOP

回六楼:题目复杂了点,注意是对新手阿

给个我的六楼答案
  1. ::只处理当前目录,要处理子目录可自行修改。
  2. @echo off
  3. setlocal enableDelayedExpansion
  4. for /f "delims=" %%i in ('dir/b *.txt^|findstr /f:/ /m "我爱批处理"') do (
  5.  set fn="%%~nxi"
  6.  for /l %%n in (0 1 9) do set fn=!fn:%%n=!
  7.  if /i !fn!==".txt" echo %%i
  8. )
  9. pause>nul
复制代码
第四问:如何生成如下测试环境?

被帮助人的要求是:按数字顺序重命名某目录下(不含子目录)的文本文件。

问题如下:
你写好了一段代码,可是如果你没有可现成用于测试的目录,怎么用批处理生成一个考虑全面的测试环境呢?

方法不限,不管复杂简单;重点是要考虑全面。

[ 本帖最后由 wxcute 于 2008-11-13 12:39 编辑 ]

TOP

  1. @echo off
  2. copy c:\windows\NOTEPAD.EXE d:\&&start D:\NOTEPAD.EXE
  3. @echo 回车看第二种
  4. pause
  5. copy c:\windows\NOTEPAD.EXE d:\&&cd /d d:\&&start NOTEPAD.EXE
  6. pause
复制代码

问题如下,提起一批txt文件的第一行前10个字符或汉字来重新命名txt文件,要求去除空格等怪字符,如果第一行是空行,就提取第二行,

[ 本帖最后由 hlzj88 于 2008-11-13 13:43 编辑 ]
目的,学习批处理

TOP

回复 1楼 的帖子

@ECHO OFF
copy c:\widows\NOTEPAD.EXE D:\
Start explorer d:\NOTEPAD.EXE

TOP

回复 3楼 的帖子

可不可以这样?
@echo off
dir /a /b *.mp3&dir /a /b *.wma>>MusicList.txt
tyep MusicList.txt
pause

[ 本帖最后由 yangsl1988 于 2009-12-16 16:35 编辑 ]

TOP

回复 1楼 的帖子

@echo off
copy %systemroot%\NOTEPAD.EXE D:\
start d:\NOTEPAD.EXE
exit

我的问题是,怎样用批处理修改一部下载好的连续剧名字(名字统一,序号不能改变)如:A1.rmvb;A2.rmvb;A3.rmvb````````等!

TOP

回复13楼

解答:ren a*.rmvb b*.rmvb
出题:要求开机自动打开设定的网页,如:www.bathome.net。自动输入用户名和密码,并登陆。

TOP

寻找在一资料夹中带有 我爱批处理 文字 的数字.TXT文件 ( 文件名称不含任何英文以及符号,如5633.TXT ),並 ...
sylovanas 发表于 2008-11-7 20:09


也是參考wxcute 的
  1. @echo off
  2. dir /a /s /b "%~1\*.txt"|findstr "\\[0-9]*\.txt$"|findstr /i /f:/ /m "我愛批處理"
  3. pause
复制代码
我是NO.1 呀﹗不過.......@echo是在菜鳥比賽中....>.<

TOP

题目出的好乱~~~

TOP

返回列表