window系统中的start命令详解
start 是 Windows 系统中用于启动新进程或打开新窗口来运行指定程序或命令的命令。以下是对 start 命令参数的详细解释:
基本语法
start ["title"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL] [/WAIT] [/B] [command/program] [parameters]
参数详解
1. ["title"]
- 说明:这是一个可选参数,用于指定新窗口的标题。如果要使用该参数,必须将其放在命令的开头,并且用双引号括起来。如果不需要指定标题,可以省略该参数,但双引号不能省略(即使用空双引号
"")。 - 示例:
start "My Java Application" java -jar myapp.jar
上述命令会打开一个新的命令提示符窗口,窗口标题为 My Java Application,并在该窗口中运行 java -jar myapp.jar 命令。
2. /Dpath
- 说明:指定新进程的工作目录。
path是要设置的工作目录的路径。 - 示例:
start /D "C:\myproject" java -jar myapp.jar
此命令会将新进程的工作目录设置为 C:\myproject,然后在该目录下运行 java -jar myapp.jar 命令。
3. /I
- 说明:该参数用于在新窗口中使用原始环境,而不是继承当前窗口的环境。
- 示例:
start /I cmd.exe
这会打开一个新的命令提示符窗口,该窗口使用原始的环境变量设置,而不是当前窗口的环境变量。
4. /MIN
- 说明:以最小化窗口的方式启动新进程。
- 示例:
start /MIN notepad.exe
该命令会以最小化窗口的形式打开记事本程序。
5. /MAX
- 说明:以最大化窗口的方式启动新进程。
- 示例:
start /MAX mspaint.exe
此命令会以最大化窗口的形式打开画图程序。
6. /SEPARATE 和 /SHARED
- 说明:
/SEPARATE:在单独的内存空间中启动 16 位 Windows 程序。不过,现在大多数程序都是 32 位或 64 位的,这个参数使用较少。/SHARED:在共享的内存空间中启动 16 位 Windows 程序,同样适用于 16 位程序。
- 示例:(假设存在 16 位程序
oldapp.exe)
start /SEPARATE oldapp.exe
7. /LOW、/NORMAL、/HIGH、/REALTIME、/ABOVENORMAL、/BELOWNORMAL
- 说明:这些参数用于设置新进程的优先级。不同的优先级决定了操作系统分配给该进程的 CPU 时间片的多少。
/LOW:低优先级。/NORMAL:正常优先级(默认值)。/HIGH:高优先级。/REALTIME:实时优先级,具有最高的 CPU 优先级,使用时要谨慎,因为可能会影响系统的稳定性。/ABOVENORMAL:高于正常优先级。/BELOWNORMAL:低于正常优先级。
- 示例:
start /HIGH myapp.exe
该命令会以高优先级启动 myapp.exe 程序。
8. /WAIT
- 说明:使
start命令等待新进程执行完毕后再继续执行后续命令。通常用于需要等待某个程序执行完成后再进行下一步操作的场景。 - 示例:
start /WAIT notepad.exe test.txt
echo "Notepad has been closed."
上述命令会打开记事本程序并编辑 test.txt 文件,只有当记事本窗口关闭后,才会输出 Notepad has been closed.。
9. /B
- 说明:在当前窗口中启动应用程序,而不是打开新窗口。
- 示例:
start /B java -jar myapp.jar
该命令会在当前命令提示符窗口中启动 Java 程序,而不会打开新的窗口。
常见示例
以下是一个综合示例,展示了如何使用多个参数:
start "My App" /D "C:\myapp" /MIN /NORMAL /WAIT java -jar myapp.jar
这个命令会打开一个标题为 My App 的新窗口,将工作目录设置为 C:\myapp,以最小化窗口和正常优先级启动 Java 程序,并等待程序执行完毕。
