HOWTO · R

用鍵盤或滑鼠停止執行 R 程式碼

本文介紹如何透過鍵盤或滑鼠來停止 R 程式碼的執行。

本頁內容

若要停止長時間執行或非預期的 R 運算,請使用適用於目前介面的控制方式中斷執行。中斷不同於為了除錯而安排的暫停:被中斷的程式不會從原處繼續執行。停止後,請檢查已完成的工作,並重新執行所需的程式碼;如有需要,先修改程式碼再執行。
中斷命令不會還原停止前已完成的操作,因此,若命令會修改物件或檔案,重新執行前請先檢查這些變更。請在 R 工作階段中確認哪些操作已完成,並決定接下來要執行哪些命令。在 R 命令列介面中,按下 Ctrl+C 可中斷目前的命令。

使用鍵盤快捷鍵停止執行 R 程式碼

鍵盤快捷鍵取決於 R 的執行介面。在 RStudio 中,運算執行期間按下 Esc。Windows 上的圖形介面 Rgui 和 Mac 上的 R.APP 也使用相同按鍵。如果你是在終端機中使用 R 命令列介面,請按 Ctrl+C 中斷目前的運算。這些操作適用於上述介面;請勿假設每一種編輯器或終端機對相同按鍵的處理方式都一樣。

當 R 主控台位於焦點上,而且可以在其中輸入文字時,鍵盤快捷鍵就很方便。如果應用程式沒有立即回應,請稍候片刻,讓它處理中斷要求。運算可能要到達可接受中斷的時點,控制權才會返回。控制權返回後,請查看主控台是否出現提示符號或訊息,再決定是否修正並重新執行程式碼。

使用 RStudio 的 Stop 按鈕停止執行 R 程式碼

在 RStudio 中,你可以用滑鼠中斷執行中的命令。從指令碼編輯器或 Console 執行程式碼,並在程式碼執行期間查看 Console 窗格。執行時,窗格中會出現 Stop 按鈕,旁邊有紅色方塊提示。按一下即可中斷目前的執行。若滑鼠已在手邊,或你不熟悉鍵盤快捷鍵,這種方式會很方便。

請在互動式 R 工作階段中執行以下簡短範例。它會等待片刻,讓你有時間試用控制方式:

本節中的程式碼以及顯示的標籤或輸出仍為英文。

Sys.sleep(5)

這個呼叫會等待五秒,本身不會印出任何值。在 RStudio 中執行時,請按一下 Console 窗格中的 Stop 按鈕;使用 R 命令列時,則按 Ctrl+C。這個範例刻意設計得很短,即使你沒有中斷,它也會自行完成。較長的運算也可以用相同方式中斷,但介面必須能回應中斷要求。

請依照目前使用的 R 介面選擇鍵盤操作:RStudio、Rgui 或 R.APP 使用 Esc;R 命令列介面使用 Ctrl+C。若要用滑鼠操作,請使用 RStudio 的 Stop 按鈕。這兩種方式都會停止目前這次執行;它們不會插入除錯用的暫停,也不會保留可供繼續執行的位置。中斷後,請重新執行所需的命令,因為停止時後續的陳述式尚未完成。