无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: 老毛桃
打印 上一主题 下一主题

闲着没事,写个批处理分享一下

[复制链接]
61#
发表于 2006-8-19 20:17:58 | 只看该作者
谢谢这么好的东西!可以用来压缩WIN98  DOS启动盘下的那个压缩包吗?可以的话就太好了!我以前总是用WINRAR压缩成ZIP包,用UNPKZIP解压缩!
回复

使用道具 举报

62#
发表于 2006-8-20 11:27:44 | 只看该作者
原帖由 老毛桃 于 2006-8-16 10:43 AM 发表

指定的路径全名称中不可易出现空格,如果不指定,则会默认保存在 MCab.CMD 所在的文件夹中


  老毛桃,我给你挑错来啦,呵呵:P

  
SET TF=%TEMP%\Files.tmp
IF EXIST %TF% DEL %TF% >NUL
这两句代码执行del的时候会出错,这个问题的原因和你说的“路径全名称中不可出现空格”的原因是一样的,就是你没有把路径用引号括起来。

  其实,路径的输入不一定用手工输入,直接把文件拉到批处理的窗口就可以了,此时,如果路径带空格的话,会自动用引号括起来的。要注意对引号的处理。
回复

使用道具 举报

63#
发表于 2006-8-22 14:39:47 | 只看该作者
不错 支持
回复

使用道具 举报

64#
发表于 2006-8-22 15:04:52 | 只看该作者
学习一下,学习一下
回复

使用道具 举报

65#
发表于 2006-8-25 08:34:33 | 只看该作者
原帖由 secowu 于 2006-8-7 02:24 PM 发表
老毛桃,这个注册表选项,只能对单个文件有效,如何使其对整个目录有效?
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\CAB最大压缩]

[HKEY_CLASSES_ROOT\*\shell\CAB最大压缩\command]
@="makecab /v3 /D CompressionType=LZX /D CompressionMemory=21 \"%1\""



[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\CAB最大压缩\command]
@="makecab /v3 /D CompressionType=LZX /D CompressionMemory=21 \"%1\""
回复

使用道具 举报

66#
 楼主| 发表于 2006-8-25 14:13:23 | 只看该作者
原帖由 namejm 于 2006-8-20 11:27 发表


  老毛桃,我给你挑错来啦,呵呵:P

  这两句代码执行del的时候会出错,这个问题的原因和你说的“路径全名称中不可出现空格”的原因是一样的,就是你没有把路径用引号括起来。

  其实,路径的输入 ...

呵呵,这个是小问题了,我已经搞定了。

这是新的代码,可以应付所有的包含空格的路径、文件名和目标路径、文件名。
  1. @ECHO OFF
  2. SET TT=老毛桃制作的批量文件 CAB 打包工具
  3. SET TS=如果你输入的路径或文件名中有空格,请在外边用上引号
  4. COLOR 2F
  5. TITLE %TT%
  6. SET ERR=
  7. SET C0=MAKECAB /D CompressionType=LZX /D CompressionMemory=21 /D MaxDiskSize=CDROM /D Cabinet=ON /D Compress=ON /D FolderSizeThreshold=5000000

  8. :BEGIN
  9. CLS
  10. ECHO.
  11. ECHO        ╭══════════════════╮
  12. ECHO        ║                  ║
  13. ECHO    ╭═══┤ 老毛桃制作的批量文件 CAB 打包工具! ├═══╮
  14. ECHO    ║   ║                  ║   ║
  15. ECHO    ║   ╰══════════════════╯   ║
  16. ECHO    ║                          ║
  17. ECHO    ║   您是需要将批量文件制作成一个压缩包呢?     ║
  18. ECHO    ║   还是想生成 N 个 CAB 格式的单独压缩文件?    ║
  19. ECHO    ║                          ║
  20. ECHO    ║    [1] 将批量文件制作成一个压缩包        ║
  21. ECHO    ║    [2] 将每个文件制作成单独压缩文件       ║
  22. ECHO    ║    [3] 将单个文件制作成单独压缩文件       ║
  23. ECHO    ║    [Q] 退出                   ║
  24. ECHO    ║                          ║
  25. ECHO    ╟──────────────────────────╢
  26. ECHO    ║ 注:1. 待压缩文件的父目录需与本程序在同一路径下; ║
  27. ECHO    ║   2. 待压缩文件所在路径(包括父路径)不许有空格。 ║
  28. ECHO    ╟══════════════════════════╢
  29. ECHO    ║ 版权所有:老毛桃   供无忧朋友们交流,翻版不究 ║
  30. ECHO    ╰──────────────────────────╯
  31. ECHO.
  32. SET Choice=
  33. SET /P Choice=    请选择要进行的操作(1/2/3/Q),然后按回车:

  34. IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1%
  35. IF /I '%Choice%'=='1' GOTO LOOPA
  36. IF /I '%Choice%'=='2' GOTO LOOPA
  37. IF /I '%Choice%'=='3' GOTO LOOPD
  38. IF /I '%Choice%'=='Q' EXIT
  39. GOTO BEGIN

  40. :LOOPA
  41. IF /I '%Choice%'=='1' (
  42. TITLE %TT% - 制作成一个压缩包
  43. )
  44. IF /I '%Choice%'=='2' (
  45. TITLE %TT% - 制作成多个单独压缩文件
  46. )
  47. IF "%Err%"=="" (
  48. CLS
  49. )
  50. ECHO 请输入需压缩的文件所在的目录名,如 Files
  51. ECHO 注意:1.%TS%
  52. SET Ds=
  53. SET /P Ds=
  54. IF %Ds%A==A goto LOOPA
  55. IF NOT EXIST %Ds% (
  56. SET Err=1
  57. ECHO.
  58. CLS
  59. ECHO 您所输入的路径不存在,请重新输入
  60. ECHO.
  61. GOTO LOOPA
  62. )

  63. IF /I '%Choice%'=='1' GOTO LOOPB
  64. GOTO LOOPC

  65. :LOOPB
  66. CLS
  67. ECHO 请输入需要保存的压缩包文件名,如 Drive.CAB
  68. ECHO 注意:1.%TS%
  69. SET FCab=
  70. SET /P FCab=
  71. IF %FCab%A==A goto LOOPB
  72. SET C=%C0% /D DiskDirectoryTemplate=.\ /D CabinetNameTemplate=%FCab%
  73. SET TF=%TEMP%\Files.tmp
  74. IF EXIST "%TF%" DEL "%TF%" >NUL
  75. FOR %%i in (%Ds%\*.*) do ECHO "%%i" >>%TF%
  76. %C% /F %TF%
  77. DEL /F /S /Q "%TF%" SETUP.INF SETUP.RPT >NUL
  78. GOTO EXIT

  79. :LOOPC
  80. CLS
  81. ECHO 请输入需要保存的 CAB 格式文件所在路径,比如 OutFile
  82. ECHO 如果此路径不存在,将在当前目录下自动创建。
  83. ECHO 注意:1.%TS%
  84. SET OUT=
  85. SET /P OUT=
  86. IF %OUT%A==A GOTO LOOPC
  87. FOR /F "delims=" %%I IN ('CD') DO SET P=%%I
  88. FOR %%i in (%Ds%\*.*) do %C0% /L %OUT% "%P%\%%i"
  89. GOTO EXIT

  90. :LOOPD
  91. TITLE %TT% - 只压缩一个文件
  92. IF "%Err%"=="" (
  93. CLS
  94. )
  95. ECHO 请输入需要需要压缩的文件所在路径,比如 Driver\NV4_Disp.SYS
  96. ECHO 其中 Driver 与本程序在同一文件夹中
  97. ECHO 您也可以选择按 TAB 键快速输入路径和文件名称,完成后按回车确认
  98. ECHO.
  99. ECHO 注意:1.%TS%
  100. SET FileR=
  101. SET /P FileR=
  102. IF %FileR%A==A (
  103. CLS
  104. GOTO LOOPD
  105. )
  106. IF NOT EXIST %FileR% (
  107. SET Err=1
  108. ECHO.
  109. CLS
  110. ECHO 您所输入的文件路径不存在,请重新输入
  111. ECHO.
  112. GOTO LOOPD
  113. )
  114. GOTO LOOPE

  115. :LOOPE
  116. CLS
  117. ECHO 请输入需要需要保存的压缩文件路径,比如 Driver\NV4_Disp.CAB
  118. ECHO 如果不输入文件路径,则以 NV4_Disp.SY_ 的形式保存在本程序所在路径
  119. ECHO.
  120. ECHO 注意:1.如果尝试输入一个不存在的路径信息,压缩程序会出错!
  121. ECHO    2.%TS%
  122. SET FileT=
  123. SET /P FileT=
  124. %C0% %FileR% %FileT%
  125. GOTO EXIT

  126. :EXIT
  127. ECHO.
  128. ECHO.
  129. ECHO.
  130. ECHO 您需要的操作已经全部完成,请核查. . .
  131. ECHO.
  132. ECHO 老毛桃感谢您的使用,如果您有什么好的建议,请 QQ 我!
  133. ECHO.
  134. ECHO.
  135. ECHO 请按任意键退出程序. . .
  136. PAUSE >NUL
复制代码
回复

使用道具 举报

67#
 楼主| 发表于 2006-8-25 14:14:49 | 只看该作者
原帖由 沙漠之子 于 2006-8-25 08:34 发表
[quote]原帖由 secowu 于 2006-8-7 02:24 PM 发表
老毛桃,这个注册表选项,只能对单个文件有效,如何使其对整个目录有效?
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\CAB最大压缩]

[HKEY_CLASSES_ROOT\*\shell\CAB最大压缩\command]
@="makecab /v3 /D CompressionType=LZX /D CompressionMemory=21 \"%1\""



[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\CAB最大压缩\command]
@="makecab /v3 /D CompressionType=LZX /D CompressionMemory=21 \"%1\"" [/quote]
嗯,不错,其实将 Directory 改为 Drive,还可以适用于磁盘分区
回复

使用道具 举报

68#
发表于 2006-8-28 19:36:37 | 只看该作者
添加到右键的话就更加方便了
回复

使用道具 举报

69#
发表于 2006-8-28 23:29:51 | 只看该作者
命令行操作有时也能解决很多问题。
回复

使用道具 举报

70#
发表于 2006-8-29 19:04:57 | 只看该作者
看看,如何打包多个文件成一个文件的参数。
回复

使用道具 举报

71#
发表于 2006-8-29 23:16:10 | 只看该作者
在外面上机呢,回来下载
回复

使用道具 举报

72#
发表于 2006-8-30 13:28:24 | 只看该作者
太好了
回复

使用道具 举报

73#
发表于 2006-9-1 09:23:05 | 只看该作者
强烈支持
回复

使用道具 举报

74#
发表于 2006-9-5 00:38:18 | 只看该作者
十分感谢,正在学习你的东西!
回复

使用道具 举报

75#
发表于 2006-9-5 06:56:01 | 只看该作者
谢谢楼主分享~~~~
回复

使用道具 举报

76#
发表于 2006-9-5 07:40:21 | 只看该作者
谢谢版主.
回复

使用道具 举报

77#
发表于 2006-9-5 10:14:04 | 只看该作者
厉害
回复

使用道具 举报

78#
发表于 2006-9-5 22:06:59 | 只看该作者
不错,以前我用CabMan,谢谢!
回复

使用道具 举报

79#
发表于 2006-9-6 09:17:03 | 只看该作者
下载收藏
感谢先
回复

使用道具 举报

80#
发表于 2006-9-6 14:12:09 | 只看该作者
强!!!,不过暂时好象还用不着吧
回复

使用道具 举报

81#
发表于 2006-9-6 14:42:06 | 只看该作者
收藏了先,多谢!
回复

使用道具 举报

82#
发表于 2006-9-7 10:17:44 | 只看该作者
强猪,支持ING
回复

使用道具 举报

83#
发表于 2006-9-9 18:42:07 | 只看该作者
不顶都不行,为了互联网的共享精神喝彩!!
回复

使用道具 举报

84#
发表于 2006-9-11 10:15:57 | 只看该作者
好的,正用的着。谢谢毛桃
回复

使用道具 举报

85#
发表于 2006-9-11 18:47:03 | 只看该作者
支持了楼主!!!!谢谢分享
回复

使用道具 举报

86#
发表于 2006-9-21 18:56:26 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

87#
发表于 2006-9-22 02:30:08 | 只看该作者
现在才看到,收一个,谢谢!
回复

使用道具 举报

88#
发表于 2006-9-22 07:17:30 | 只看该作者
高人的帖!我顶
回复

使用道具 举报

89#
发表于 2006-9-22 14:42:17 | 只看该作者
script_silent.pe
江民这个报毒 生成的exe也报

ps:一采用静默状态就会报.这个东西是吕达嵘汉化的汉化新世纪上有的下  ExeScript v2.1.1 汉化修正版

[ 本帖最后由 boiu 于 2006-9-22 03:26 PM 编辑 ]
回复

使用道具 举报

90#
 楼主| 发表于 2006-9-22 14:47:07 | 只看该作者
原帖由 boiu 于 2006-9-22 14:42 发表
script_silent.pe
江民这个报毒 生成的exe也报

我最看不起的就是这些国产杀软,自以为神通广大,以为自己杀毒能力如何如何,其实。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-11 07:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表