一、使用CTRL+C結束命令
當命令執行時,如果想要中斷(結束)該命令,可以使用CTRL+C。在命令執行的過程中,如果按下CTRL+C,Linux會向進程發送一個中斷信號(SIGINT),從而中斷該進程。例如,執行以下命令:
ping www.baidu.com
如果想要中途中斷,可以按下CTRL+C。命令行會輸出以下信息:
^C
--- www.baidu.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 23.402/42.432/61.462/19.030 ms
可以看到,CTRL+C的作用是中斷命令,並輸出一個中斷信息。
二、使用CTRL+Z暫停命令
當命令執行時,如果想要暫停該命令,可以使用CTRL+Z。在命令執行的過程中,如果按下CTRL+Z,Linux會向進程發送一個停止信號(SIGTSTP),從而暫停該進程。例如,執行以下命令:
cat /dev/random > randomdata.txt
如果想要中途暫停,可以按下CTRL+Z。命令行會輸出以下信息:
^Z
[1]+ Stopped cat /dev/random > randomdata.txt
可以看到,CTRL+Z的作用是暫停命令,並輸出一個停止信息。此時,該命令的狀態為Stopped。可以使用jobs命令查看當前所有被暫停的命令。
三、使用fg和bg恢復和掛起命令
在使用CTRL+Z暫停命令後,可以使用fg命令恢復命令的執行。在命令行中輸入fg即可恢復被暫停的命令。例如,執行以下命令:
cat /dev/random > randomdata.txt
如果想要中途暫停,可以按下CTRL+Z。命令行會輸出以下信息:
^Z
[1]+ Stopped cat /dev/random > randomdata.txt
此時,可以使用fg命令恢復命令的執行。命令行會輸出以下信息:
cat /dev/random > randomdata.txt
^C
可以看到,命令已經恢復執行,並輸出中斷信息。
除了使用fg命令,還可以使用bg命令將命令掛起到後台繼續執行。在命令行中輸入bg即可將命令掛起到後台。例如,下面是一個例子:
cat /dev/random > randomdata.txt
^Z
[1]+ Stopped cat /dev/random > randomdata.txt
bg
[1]+ cat /dev/random > randomdata.txt &
可以看到,命令已經被掛起到後台,並輸出了一個信息。
四、使用kill結束命令
除了使用CTRL+C中斷命令外,還可以使用kill命令結束命令。在Linux中,每個進程都有一個唯一的PID(Process ID)。可以使用ps命令查看進程的PID。例如,執行以下命令:
ps aux | grep randomdata.txt
可以看到,ps命令輸出了包含randomdata.txt的進程信息:
root 7293 0.0 0.0 0 0 ? S 09:14 0:00 cat /dev/random > randomdata.txt
root 7305 0.0 0.0 14684 1052 pts/0 S+ 09:16 0:00 grep --color=auto randomdata.txt
可以看到,進程的PID為7293。可以使用kill命令結束該進程:
kill 7293
執行kill命令後,命令行不會有任何輸出。可以使用ps命令確認該進程已經結束。
五、總結
Linux結束當前命令的方法有很多種。常用的方法有CTRL+C、CTRL+Z、fg、bg和kill。掌握這些方法可以在使用Linux時更加方便。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/304581.html