簡體   English   中英

如何在 Windows 中的命令提示符啟動時運行命令

[英]How to run a command on command prompt startup in Windows

編輯

如果您想在計算機啟動時或基於事件執行任何任務,這將非常有幫助

http://answers.microsoft.com/en-us/windows/forum/windows_7-performance/how-to-schedule-computer-to-shut-down-at-a-certain/800ed207-f630-480d-8c92- dff2313c193b


回到問題

我有兩個問題:

  1. 我希望在啟動命令提示符時執行一些特定的命令。

    例如cls清除我的命令提示符。

  2. 我想在批處理文件中執行一些命令並等待用戶輸入新命令(如果有的話)。

    例如,一個批處理文件會將用戶帶到某個指定的文件夾,然后等待用戶從命令提示符重命名/刪除文件。

我該怎么做?

如果您希望每次啟動命令提示符時都運行一組已定義的命令,實現這一目標的最佳方法是在AutoRun注冊表值中指定一個 init 腳本。 像這樣創建它(可擴展的字符串值允許您使用%USERPROFILE%等環境變量):

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun ^
  /t REG_EXPAND_SZ /d "%"USERPROFILE"%\init.cmd" /f

然后在您的配置文件文件夾中創建一個文件init.cmd

@echo off

command_A
command_B
...
cls

要刪除這些更改,請刪除注冊表項:

reg delete "HKCU\Software\Microsoft\Command Processor" /v AutoRun
  1. 創建快捷方式
  2. 進入屬性
  3. 它說的位: C:\\Users\\<Your username>\\Desktop\\cmd.exe ,你輸入: -cmd /K <your command here>

例如C:\\Users\\Lewis\\Desktop\\cmd.exe -cmd /K color 1f

這是啟動 1 個命令而不必弄亂注冊表的方法。

運行多個命令

您還可以使用& (和)運算符來執行多個命令。

例如。

C:\Users\Lewis\Desktop\cmd.exe -cmd /K color 1f & H: & <your command>

學分:user6589073

我找到了答案:我應該使用/K開關,使用它我可以在打開的命令提示符下輸入新命令。

例如cmd /K cls將為我打開一個命令提示符並清除它。 (問題 1 的答案)

cmd /K MyBatchFile.bat將啟動命令提示符,執行批處理文件並停留在命令提示符處,不會退出。 (回答問題 2)。

首先,您需要按 Windows 鍵 + R。在出現的框中,鍵入“regedit”(不帶引號)。 Windows 注冊表編輯器應該會打開。 現在,定位到 HKEY_CURRENT_USER/Software/Microsoft/Command Processor。 單擊左側的命令處理器后,單擊頂部欄上的編輯。 然后轉到“編輯”菜單中的“新建”>“字符串值”。 重命名出現在 Autorun 中的字符串值。 右鍵單擊自動運行並選擇修改。 在“值數據”區域下,鍵入要運行的命令。 您可以通過在它們之間鍵入 && 來運行多個。

稍微擴展一下,這里是 Windows 10 的替代方案,其中可以定義多個別名並在執行時應用於命令提示符。

  1. %USERPROFILE%文件夾中創建一個名為init.cmd的文件, init.cmd包含別名:

初始化命令

@echo off
doskey c=cls
doskey d=cd %USERPROFILE%\Desktop
doskey e=explorer $*
doskey g=git status
doskey l=dir /a $*
  1. 注冊它以在執行命令提示符時應用:

在命令提示符中,運行:

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun /t REG_EXPAND_SZ /d "%"USERPROFILE"%\init.cmd" /f

完畢

現在 init.cmd 的內容將運行 cmd.exe 的執行,即來自:

  • 任務欄快捷方式
  • WIN + R cmd
  • 通過在文件資源管理器地址欄中鍵入cmd
  • 通過直接從 C:\\Windows\\System32 運行 cmd.exe

注冊這些設置后,請記住關閉/打開:

  • 命令提示符以便應用設置
  • 文件資源管理器,如果您用於通過文件資源管理器地址欄啟動 cmd

要取消注冊,請運行:

reg delete "HKCU\Software\Microsoft\Command Processor" /v AutoRun

我有一個運行 python 程序的命令。 我不想在登錄后手動運行這個命令,我希望這個命令應該在我登錄到我的 ubuntu 后自動運行。 我正在使用 Ubuntu 16.04。

這是命令。

sh demo_darknet_yolov3.sh,這個shell放在這個目錄下 littro@littro-System-Product-Name:~/MobileNet-YOLO-master/MobileNet-YOLO-master

根據您的腳本,您可能希望使用cmd.exe /k <input script>方法而不是注冊表項Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\autorun

我發現后者,啟動 cmd 的其他程序受注冊表項的影響。 例如,我無法讓 Visual Studio Native Tools 提示正常工作,因為我的腳本妨礙了工作。 在我的例子中,腳本是一個有 5 個選項的菜單,包括手動啟動各種程序(我喜歡最小化我的自動運行程序)和設置各種環境變量(即打印機、代理設置、程序的默認版本等) .

如果你正在做某事 static 我認為這兩種方法都可以。

我會對問題或適用的答案發表評論,但我沒有發表評論的名譽。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM