关于批处理shutdown的一个简单问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 17:19:45
大家一定用过批处理,今天我发现一个非常怪的问题。问题如下:
在任意目录下新建一个bat文件,命名为shutdown.bat 。其中代码为

@echo off
shutdown -s

就这短短的两句话就是运行不了,但是一旦把文件名改为其他任意(个人人认为)文件名就可以运行了。
请问各位高手这是什么原因。菜鸟谢过。

系统:Win2003
硬件:图拉丁1.0 SDRAM256M
我问的不是怎么用shutdown这个命令,而是为什么其他文件名可以运行,就"shutdown.bat"不能运行。

我也试了,的确如此。
但是你在批处理中,把shutdown 写完整,就是写成shutdown .exe 就可以了。

原因就是:
shutdown.bat在执行的时候会认为你那个shutdowm -s命令是在调用shutdown.bat文件自身,肯定会死循环。
myshutdown.bat在执行的时候遇到shutdowm -s命令,会去调用C:\WINDOWS\shutdown.exe,这样才能实现关机。

因为shutdown被那个.bat重名占用,运行的话会无休止的重复执行这个bat,无法执行到系统的shutdown

批处理中,写shutdown.exe就可以了,如下:
@echo off
shutdown.exe -s

开始-运行
shutdown -s
要取消
shutdown -a

@echo off
set /p t=你要多少秒关机:(单位秒 如 60)
shutdown -s -t %t%