linux进程的启动、终止的方式以及如何进行进程的查看
封面图
•
2025-10-28
•
Linux
205
0
0
0
在 Linux 系统中,进程是运行中的程序实例。了解如何启动、终止和查看进程对于系统管理和调试非常重要。以下是关于 **Linux 进程的启动、终止以及查看方式** 的详细说明: --- ## 一、进程的启动方式 ### 1. **直接运行命令** ```bash $ ./myprogram ``` - 在当前终端中运行程序,程序会占用当前终端。 ### 2. **后台运行(使用 `&`)** ```bash $ ./myprogram & ``` - 将程序放到后台运行,不会阻塞当前终端。 ### 3. **使用 `nohup` 命令(忽略挂断信号)** ```bash $ nohup ./myprogram & ``` - 即使终端关闭,程序也会继续运行(输出默认保存到 `nohup.out` 文件)。 ### 4. **使用 `disown` 命令(将后台任务从当前 shell 分离)** ```bash $ ./myprogram & $ disown ``` - 防止程序因 shell 退出而终止。 ### 5. **使用 `at` 或 `batch` 命令(定时执行)** ```bash $ at 10:00 AM > ./myprogram > Ctrl+D ``` - 在指定时间运行程序。 ### 6. **使用 `systemd` 或 `init.d`(服务方式启动)** - 可以通过系统服务管理器(如 `systemctl`)启动服务: ```bash $ sudo systemctl start myservice ``` --- ## 二、进程的终止方式 ### 1. **使用 `kill` 命令** ```bash $ kill [PID] ``` - 发送 `SIGTERM`(终止信号)给进程。 ### 2. **强制终止进程(使用 `SIGKILL`)** ```bash $ kill -9 [PID] ``` - 强制终止进程(不推荐,可能造成数据丢失)。 ### 3. **使用 `pkill` 命令(按名称终止进程)** ```bash $ pkill [process_name] ``` - 根据进程名终止所有匹配的进程。 ### 4. **使用 `killall` 命令(按名称终止进程)** ```bash $ killall [process_name] ``` - 终止所有同名进程。 ### 5. **终止当前终端的所有子进程** ```bash $ kill %% ``` - 终止当前终端的最后一个后台进程。 --- ## 三、查看进程的方式 ### 1. **`ps` 命令(Process Status)** ```bash $ ps $ ps aux ``` - 查看当前用户的进程信息。 - `aux` 显示所有进程(a:所有用户;u:显示用户信息;x:显示没有控制终端的进程)。 ### 2. **`top` 命令** ```bash $ top ``` - 实时动态查看系统中所有进程的状态(CPU、内存等)。 ### 3. **`htop` 命令(交互式进程查看器)** ```bash $ htop ``` - 更友好的交互式工具,功能比 `top` 更强大。 ### 4. **`pgrep` 命令(根据名称查找进程)** ```bash $ pgrep [process_name] ``` - 查找与名称匹配的进程 PID。 ### 5. **`pstree` 命令(树状查看进程)** ```bash $ pstree ``` - 以树状结构展示进程及其父子关系。 ### 6. **`lsof` 命令(查看打开的文件)** ```bash $ lsof -p [PID] ``` - 查看某个进程打开的文件、网络连接等。 --- ## 四、常用命令总结 | 命令 | 功能 | |--------------|------------------------------| | `ps` | 查看当前进程 | | `ps aux` | 查看所有进程(含详细信息) | | `top` | 实时查看进程资源使用情况 | | `htop` | 交互式进程查看器 | | `kill` | 终止指定 PID 的进程 | | `kill -9` | 强制终止进程 | | `pkill` | 按名称终止进程 | | `killall` | 按名称终止所有同名进程 | | `pgrep` | 按名称查找进程 PID | | `pstree` | 以树状结构查看进程 | | `lsof` | 查看进程打开的文件或网络连接 | --- 如果你有特定的场景(比如查看某个进程的详细信息、杀死僵尸进程、检查 CPU/内存占用等),可以告诉我,我可以提供更具体的解决方案。
上一篇:
linux网络管理 监测、传输和管理介绍
下一篇:
网上见的比较多的一套linux笔试题(单项选择部分)
标题录入,一次不能超过6条
留言
评论