我的任务是创建一个批处理文件,该文件将执行以下操作:
1)启动Windows防火墙服务 2)将条目添加到Windows防火墙中以阻止对某些网络位置的网络访问 3)删除映射的网络驱动器
我有以下命令行脚本,它们分别执行这些任务。但是,我不知道如何将所有这些文件放入一个批处理文件中,这个文件将一个接一个地执行。
net stop <Service-Name>
netsh advfirewall firewall add rule name="IP Block" dir=in interface=any action=block remoteip=<IP_Address>/32
net use x: /delete
有人可以指导我如何将这些命令放入批处理文件中,该文件只会在我运行时执行。
感谢。
答案 0 :(得分:0)
.bat
的文本文件中。以下是带有命令行参数的文件示例。 %1
,%2
,%n
分别表示命令行参数的位置。
例如。 %1
是第一个参数,%2
是第二个参数,依此类推。
net stop %1
netsh advfirewall firewall add rule name="IP Block" dir=in interface=any action=block remoteip=%2/32
net use x: /delete
您可以使用命令行参数执行批处理文件:
ScriptName.bat ServiceName 123.123.123.123
它将执行如下:
net stop ServiceName
netsh advfirewall firewall add rule name="IP Block" dir=in interface=any action=block remoteip=123.123.123.123/32
net use x: /delete
硬编码示例:
ScriptName.bat
:
net stop wuauserv
netsh advfirewall firewall add rule name="IP Block" dir=in interface=any action=block remoteip=192.168.0.1/32
net use x: /delete
要执行它,只需调用文件名:
ScriptName.bat
干杯!