我是新手,并尝试制作一个简单的程序员,启动cm.exe,然后更改其驱动器号并更改该特定驱动器中所有文件的属性,并删除所有.link文件或快捷方式文件夹。
在cmd中,输入如下:
(Drive letter):
Attrib -r -s -a -h *.*
Del auto run.inf
Del *.lnk
如何在批处理文件中编写此命令。非常感谢(对不起我的英语。哈哈:3)
答案 0 :(得分:1)
使用编辑器行Editplus或记事本++精确输入名为whateveryoulike.BAT
的文件中的这些行。这是诀窍的.BAT
部分。 (你也可以使用NOTEPAD
但要小心 - 你需要保存为ANSI而NOTEPAD有习惯尝试格式化文本)
在CMD
提示符下,键入PATH
。这将显示 ; 分隔的目录列表,搜索这些目录以尝试查找命令whateveryoulike
。将whateveryoulike.BAT
保存在该列表中的任何目录中。
严重的游戏者将添加一个包含批次的目录,并将该目录添加到路径中。
然后您需要做的就是在提示符下发出命令whateveryoulike
,批处理文件将运行 - 就像您手动输入它包含的行一样。
添加一行是传统的
@echo off
在文件的开头,它在执行命令时禁止ECHO
。
添加
也是个好主意SETLOCAL
之后的命令,用于自动处理批处理完成后批处理可能对环境所做的更改。这是一个判断问题,但批量意外地改变变量可能会导致问题。
最后,批处理可以使用%n
访问参数,其中n = 1..9所以如果你要撰写
@echo off
setlocal
set drive_letter=%1
%Drive_letter%:
Attrib -r -s -a -h *.*
Del auto run.inf
Del *.lnk
作为whateveryoulike.BAT
并将其保存在PATH
的目录中,然后从提示
whateveryoulike e
将执行您的一系列命令并将e
指定为drive_letter
。请注意访问变量的方法 - % variablename %
(但要小心!!!!!)
您可能更喜欢
@echo off
setlocal
set drive_letter=%1
if not defined drive_letter echo drive letter required&goto :eof
%Drive_letter%:
...
检查您是否确实指定了参数。请注意使用& 来分隔同一物理行和标签:eof
上的命令(需要 : )表示go to the end of the physical batchfile
最后 - 非常非常谨慎 - 您还可以使用DEL /s
删除所有子目录和attrib /s
中的匹配文件,以更改匹配文件的属性在所有子目录(以及当前所有子目录,无论如何......) - 不适合胆小的人!