windows下cmd命令提示符下讓程序后台運行命令


如果你的程序需要在windows后台運行,並且是在cmd下啟動,那么在執行的程序前加上start /b,比如start /b [程序名]。

windows下start命令的詳細參數及功能介紹如下: 文章來源 www.169it.com

啟動一個單獨的窗口運行指定的程序或命令。

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]

     [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]

     [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]

     [command/program] [parameters]

 

   "title"     在窗口標題欄中顯示的標題。

   path        啟動目錄。

   B           啟動應用程序,但不創建新窗口。應用程序已忽略 ^C 處理。

               除非應用程序啟用 ^C 處理,否則 ^Break 是唯一可以中斷

               該應用程序的方式。

   I           新的環境將是傳遞給 cmd.exe 的原始環境,而不是當前環境。                

   MIN         以最小化方式啟動窗口。

   MAX         以最大化方式啟動窗口。

   SEPARATE    在單獨的內存空間中啟動 16 位 Windows 程序。

   SHARED      在共享內存空間中啟動 16 位 Windows 程序。

   LOW         在 IDLE 優先級類中啟動應用程序。

   NORMAL      在 NORMAL 優先級類中啟動應用程序。

   HIGH        在 HIGH 優先級類中啟動應用程序。

   REALTIME    在 REALTIME 優先級類中啟動應用程序。

   ABOVENORMAL 在 ABOVENORMAL 優先級類中啟動應用程序。

   BELOWNORMAL 在 BELOWNORMAL 優先級類中啟動應用程序。

   NODE        將首選非一致性內存結構 (NUMA) 節點指定為十進制整數。

   AFFINITY    將處理器關聯掩碼指定為十六進制數字。進程被限制在這些

               處理器上運行。

 

               當 /AFFINITY 和 /NODE 結合時,會對關聯掩碼進行不同的解釋。

               指定關聯掩碼,正如 NUMA 節點的處理器掩碼正確移動到零位

               起始位置一樣。進程被限制在指定關聯掩碼和 NUMA 節點之間的

               那些通用處理器上運行。如果沒有通用處理器,則進程被限制在

               指定的 NUMA 節點上運行。

   WAIT        啟動應用程序並等待它終止。

   command/program

               如果它是內部 cmd 命令或批文件,則該命令處理器是使用

               cmd.exe 的 /K 開關運行的。這表示運行該命令之后,該窗口

               將仍然存在。

 

               如果它不是內部 cmd 命令或批文件,則它就是一個程序,並將

               作為一個窗口化應用程序或控制台應用程序運行。

 

   parameters  這些是傳遞給 command/program 的參數。

 

注意: 在 64 位平台上不支持 SEPARATE 和 SHARED 選項。

 

通過指定 /NODE,可按照利用 NUMA 系統中的內存區域的方式創建進程。例如,

可以創建兩個完全通過共享內存互相通信的進程以共享相同的首選 NUMA 節點,

從而最大限度地減少內存延遲。如有可能,它們即會分配來自相同 NUMA 節點的

內存,並且會在指定節點之外的處理器上自由運行。

 

   啟動 /NODE 1 application1.exe

   啟動 /NODE 1 application2.exe

 

這兩個進程可被進一步限制在相同 NUMA 節點內的指定處理器上運行。在以下

示例中, application1 在節點的兩個低順序處理器上運行,而 application2

在該節點的其后兩個處理器上運行。該示例假定指定節點至少具有四個邏輯

處理器。請注意,節點號可更改為該計算機的任何有效節點號,而無需更改關聯

掩碼。

 

   啟動 /NODE 1 /AFFINITY 0x3 application1.exe

   啟動 /NODE 1 /AFFINITY 0xc application2.exe

 

如果命令擴展被啟用,通過命令行或 START 命令的外部命令

調用會如下改變:

 

將文件名作為命令鍵入,非可執行文件可以通過文件關聯調用。

   (例如,WORD.DOC 會調用跟 .DOC 文件擴展名關聯的應用程序)。

   關於如何從命令腳本內部創建這些關聯,請參閱 ASSOC 和

    FTYPE 命令。

 

執行的應用程序是 32-位 GUI 應用程序時,CMD.EXE 不等應用

   程序終止就返回命令提示符。如果在命令腳本內執行,該新行為

   則不會發生。

 

如果執行的命令行的第一個符號是不帶擴展名或路徑修飾符的

   字符串 "CMD","CMD" 會被 COMSPEC 變量的數值所替換。這

   防止從當前目錄提取 CMD.EXE。

 

如果執行的命令行的第一個符號沒有擴展名,CMD.EXE 會使用

   PATHEXT 環境變量的數值來決定要以什么順序尋找哪些擴展

   名。PATHEXT 變量的默認值是:

 

       .COM;.EXE;.BAT;.CMD

 

   請注意,該語法跟 PATH 變量的一樣,分號隔開不同的元素。

 

查找可執行文件時,如果沒有相配的擴展名,看一看該名稱是否

與目錄名相配。如果確實如此,START 會在那個路徑上調用

Explorer。如果從命令行執行,則等同於對那個路徑作 CD /D。

啟動一個單獨的窗口運行指定的程序或命令。

 

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]

     [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]

     [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]

     [command/program] [parameters]

 

   "title"     在窗口標題欄中顯示的標題。

   path        啟動目錄。

   B           啟動應用程序,但不創建新窗口。應用程序已忽略 ^C 處理。

               除非應用程序啟用 ^C 處理,否則 ^Break 是唯一可以中斷

               該應用程序的方式。

   I           新的環境將是傳遞給 cmd.exe 的原始環境,而不是當前環境。                

   MIN         以最小化方式啟動窗口。

   MAX         以最大化方式啟動窗口。

   SEPARATE    在單獨的內存空間中啟動 16 位 Windows 程序。

   SHARED      在共享內存空間中啟動 16 位 Windows 程序。

   LOW         在 IDLE 優先級類中啟動應用程序。

   NORMAL      在 NORMAL 優先級類中啟動應用程序。

   HIGH        在 HIGH 優先級類中啟動應用程序。

   REALTIME    在 REALTIME 優先級類中啟動應用程序。

   ABOVENORMAL 在 ABOVENORMAL 優先級類中啟動應用程序。

   BELOWNORMAL 在 BELOWNORMAL 優先級類中啟動應用程序。

   NODE        將首選非一致性內存結構 (NUMA) 節點指定為十進制整數。

   AFFINITY    將處理器關聯掩碼指定為十六進制數字。進程被限制在這些

               處理器上運行。

 

               當 /AFFINITY 和 /NODE 結合時,會對關聯掩碼進行不同的解釋。

               指定關聯掩碼,正如 NUMA 節點的處理器掩碼正確移動到零位

               起始位置一樣。進程被限制在指定關聯掩碼和 NUMA 節點之間的

               那些通用處理器上運行。如果沒有通用處理器,則進程被限制在

               指定的 NUMA 節點上運行。

   WAIT        啟動應用程序並等待它終止。

   command/program

               如果它是內部 cmd 命令或批文件,則該命令處理器是使用

               cmd.exe 的 /K 開關運行的。這表示運行該命令之后,該窗口

               將仍然存在。

 

               如果它不是內部 cmd 命令或批文件,則它就是一個程序,並將

               作為一個窗口化應用程序或控制台應用程序運行。

 

   parameters  這些是傳遞給 command/program 的參數。

 

注意: 在 64 位平台上不支持 SEPARATE 和 SHARED 選項。

 

通過指定 /NODE,可按照利用 NUMA 系統中的內存區域的方式創建進程。例如,

可以創建兩個完全通過共享內存互相通信的進程以共享相同的首選 NUMA 節點,

從而最大限度地減少內存延遲。如有可能,它們即會分配來自相同 NUMA 節點的

內存,並且會在指定節點之外的處理器上自由運行。

 

   啟動 /NODE 1 application1.exe

   啟動 /NODE 1 application2.exe

 

這兩個進程可被進一步限制在相同 NUMA 節點內的指定處理器上運行。在以下

示例中, application1 在節點的兩個低順序處理器上運行,而 application2

在該節點的其后兩個處理器上運行。該示例假定指定節點至少具有四個邏輯

處理器。請注意,節點號可更改為該計算機的任何有效節點號,而無需更改關聯

掩碼。

 

   啟動 /NODE 1 /AFFINITY 0x3 application1.exe

   啟動 /NODE 1 /AFFINITY 0xc application2.exe

 

如果命令擴展被啟用,通過命令行或 START 命令的外部命令

調用會如下改變:

 

將文件名作為命令鍵入,非可執行文件可以通過文件關聯調用。

   (例如,WORD.DOC 會調用跟 .DOC 文件擴展名關聯的應用程序)。

   關於如何從命令腳本內部創建這些關聯,請參閱 ASSOC 和

    FTYPE 命令。

 

執行的應用程序是 32-位 GUI 應用程序時,CMD.EXE 不等應用

   程序終止就返回命令提示符。如果在命令腳本內執行,該新行為

   則不會發生。

 

如果執行的命令行的第一個符號是不帶擴展名或路徑修飾符的

   字符串 "CMD","CMD" 會被 COMSPEC 變量的數值所替換。這

   防止從當前目錄提取 CMD.EXE。

 

如果執行的命令行的第一個符號沒有擴展名,CMD.EXE 會使用

   PATHEXT 環境變量的數值來決定要以什么順序尋找哪些擴展

   名。PATHEXT 變量的默認值是:

 

       .COM;.EXE;.BAT;.CMD

 

   請注意,該語法跟 PATH 變量的一樣,分號隔開不同的元素。

 

查找可執行文件時,如果沒有相配的擴展名,看一看該名稱是否

與目錄名相配。如果確實如此,START 會在那個路徑上調用

Explorer。如果從命令行執行,則等同於對那個路徑作 CD /D。

 

 

文章地址:windows下cmd命令提示符下讓程序后台運行命令


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM