开发常用的 Linux 命令4(系统、进程和其它)

简介: 开发常用的 Linux 命令4(系统、进程和其它)

开发常用的 Linux 命令4(系统、进程和其它)

image.png

作为开发者,Linux是我们必须掌握的操作系统之一。因此,在编写代码和部署应用程序时,熟练使用Linux命令非常重要。这些常用命令不得不会,掌握这些命令,工作上会事半功倍,大大提高工作效率。




七、系统和关机(关机、重启和登出)


常用命令:

命令 执行
shutdown -h now 关闭系统
init 0 关闭系统
telinit 0 关闭系统
shutdown -h hours:minutes & 在后台按预定时间关闭系统
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启
reboot 重启
logout 注销
time 测算一个命令(即程序)的执行时间



其中:


shutdown -h now, init 0 和 telinit 0 命令都可以用于关闭系统,但它们的实现方式略有不同:

   shutdown -h now 命令会立即关闭系统,并向所有登录用户发送关机通知。它会正常地卸载文件系统并停止所有进程。

   init 0 命令会将系统切换到运行级别0(也称为"单用户模式"),这个级别只运行必要的服务和进程,然后停止系统。这个命令比较快速,但是不会正常卸载文件系统或向用户发送关机通知。

   telinit 0 命令与 init 0 相似,也会将系统切换到运行级别0,但是它会先执行 /etc/init.d/rc 脚本,关闭所有服务并卸载文件系统,然后再停止系统。这个命令比较缓慢,但是会正常地关闭系统并向用户发送关机通知。


总之,如果您想要快速关闭系统,可以使用 init 0 命令。如果您想要正常地关闭系统并向用户发送关机通知,应该使用 shutdown -h now 或 telinit 0 命令。



八、进程相关的命令


jps命令

显示当前系统的java进程情况,及其id号,jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。


示例:

1.列出当前系统中所有正在运行的Java进程的PID和主类的名称。

jps 
• 1




2.显示完整的Java进程名和参数列表。

jps -l:
• 1



3.显示启动时传递给main方法的参数。

jps -m
• 1

4.显示JVM启动时传递给JVM的参数。

jps -v


5.仅显示进程ID,不显示主类名。

jps -q 
• 1


6.将选项传递给JVM。

jps -Joption 
• 1



ps命令


用于将某个时间点的进程运行情况选取下来并输出,process的缩写

常用选项:

选项 执行
-A 所有的进程均显示出来
-a 不与terminal有关的所有进程
-u 有效用户的相关进程
-x 一般与a参数一起使用,可列出较完整的信息
-l 较长,较详细地将PID的信息列出


常用示例:

1.查看系统所有的进程数据

ps aux 
• 1


2.查看不与terminal有关的所有进程

ps ax 
• 1

3查看系统所有的进程数据

ps -lA

4.查看连同一部分进程树状态

ps axjf 
• 1



kill命令

kill命令用于向进程发送信号。通常情况下,我们使用kill命令来终止(即杀死)一个进程,但实际上它可以用于向进程发送任何一种信号。


kill命令的基本语法如下:

kill [signal] PID
• 1

其中,signal表示要发送的信号类型,默认为SIGTERM(15),PID则是要接收该信号的进程ID。


以下是一些常用的信号类型及其含义:


   HUP 1 终端断线

   INT 2 中断(同 Ctrl + C)

   QUIT 3 退出(同 Ctrl + \)

   TERM 15 终止

   KILL 9 强制终止

   CONT 18 继续(与STOP相反, fg/bg命令)

   STOP 19 暂停(同 Ctrl + Z)


以下是一些常用的选项及其含义:

   -l:信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称

   -a:当处理当前进程时,不限制命令名和进程号的对应关系

   -p:指定kill 命令只打印相关进程的进程号,而不发送任何信号

   -s:指定发送信号

   -u:指定用户


常用示例


1:列出所有信号名称 命令:kill -l 输出:

2:得到指定信号的数值


3.强制终止进程

kill -9 PID
• 1

4.向多个进程发送信号

kill -signal PID1 PID2 ...
• 1

这条命令将会向指定的多个进程发送信号,可以同时杀死多个进程或者打断它们的运行。



killall命令


向一个命令启动的进程发送一个信号,用于杀死指定名字的进程

killall [选项] [进程名]


其中,进程名 指定要杀死的进程的名称。如果没有指定信号,则默认发送 SIGTERM 信号。

一些常用选项包括:


   -Z 只杀死拥有scontext 的进程

   -e 要求匹配进程名称

   -I 忽略小写

   -g 杀死进程组而不是进程

   -i 交互模式,杀死进程前先询问用户

   -l 列出所有的已知信号名称

   -q 不输出警告信息

   -s 发送指定的信号

   -v 报告信号是否成功发送

   -w 等待进程死亡

   –help 显示帮助信息

   –version 显示版本显示


示例


1:杀死所有同名进程

killall firefox
• 1

2.强制杀死所有同名进程

killall -9 bash
• 1

3.向进程发送指定信号

killall -TERM ngixn 或者 killall -KILL nginx


top命令

top 是一个用于监视系统进程的命令行工具。它可以实时地显示各个进程的 CPU 利用率、内存占用情况、进程 ID 等信息,非常适合于查找和终止耗费系统资源的进程。


在这个列表中,每行代表一个进程,列出了该进程的进程 ID(PID)、所属用户、CPU 利用率、内存占用等信息。按照 CPU 利用率从高到低排列,可以使用 Shift + P 快捷键;按照内存占用情况从高到低排列,可以使用 Shift + M 快捷键。


一些常用的命令选项包括:


   -d <秒数>:指定更新数据的时间间隔,默认为 3 秒。

   -p <进程ID>:只显示指定进程 ID 的进程信息。

   -u <用户名>:只显示指定用户名的进程信息。

   -H:显示进程树,即以缩进形式展示进程之间的父子关系。

   -i:不显示空闲进程(IDLE)。

   -c:显示完整的命令行而不是仅仅显示进程名。


如何杀死进程:


(1)终端输入top进图图形化界面

(2)kill -9 pid (-9表示强制关闭)

(3)killall -9 程序的名字

(4)pkill 程序的名字

查看进程端口号:


netstat -tunlp|grep 端口号

————————————————


九、其它


history命令

显示最近执行的命令历史记录。

history [options]



常用选项:

  • -c:清除历史记录。

常用示例:

1.显示最近执行的命令


使用 history 命令不带任何参数,可以显示最近执行的命令历史记录。

2.按照编号查找命令


每个命令在历史记录中都有一个编号,可以使用这个编号来查找特定的命令。例如,使用 !1249 命令可以运行历史记录中编号为 1249 的命令,如下所示:

以上命令运行了历史记录中编号为 3 的命令 ls


3.搜索命令历史记录

使用 history 命令加上 grep 命令可以搜索历史记录中包含特定字符串的命令。例如,使用以下命令可以搜索包含字符串 ls 的命令:

history | grep ls
• 1


以上命令将显示历史记录中包含字符串 ls 的命令,即 ls 命令。

4.清除命令历史记录

使用 history 命令加上 -c 参数可以清空命令历史记录。例如:

history -c
• 1

以上命令将清空历史记录中所有的命令。



man命令


man 是一种用来查看命令手册页的工具。手册页包含了关于命令的详细说明、参数、示例以及其他有用的信息。


常用示例:

1.查看命令手册页

使用 man 命令后跟命令名,即可查看该命令的手册页。例如,以下命令可以查看 ls 命令的手册页:

man man
• 1


手册页将会在终端上显示。

2.搜索手册页

使用 man 命令后跟 -k 参数和关键字,可以搜索包含该关键字的所有手册页。例如,以下命令可以搜索包含字符串 network 的所有手册页:

man -k network
• 1

命令将输出所有包含字符串 network 的手册页的摘要信息。



sudo命令


sudo 是一种用来以超级用户(root)身份执行命令的工具。使用 sudo 命令可以避免在使用 root 用户身份登录时操作系统安全性的风险。


常用示例:

1.执行单个命令

使用 sudo 命令后跟需要执行的命令即可以 root 身份执行该命令。例如,以下命令可以以 root 身份创建一个名为 testfile 的文件:

sudo touch testfile
• 1


2.切换到 root 用户


使用 sudo -i命令或者su 命令可以切换到 root 用户。该命令将打开一个新的 shell 窗口,并将当前用户切换为 root 用户。例如:

sudo -i
• 1


这里输入密码,密码不可见,即可切换到root用户


3.以其他用户身份执行命令

使用 sudo -u 命令可以以指定用户的身份执行命令。例如,以下命令可以以 user1 用户的身份查看 /var/log/messages 文件:

sudo -u user1 less /var/log/messages
• 1


4.查看 sudo 命令的配置

使用 sudo -V 命令可以查看当前系统中已经配置的 sudo 命令的版本和配置信息。

sudo -V
• 1

该命令将输出当前系统中 sudo 命令的版本和已配置的参数信息。



5.退出root用户

在终端中输入exit即可退出root用户

exit
• 1

相关实践学习
CentOS 8迁移Anolis OS 8
Anolis OS 8在做出差异性开发同时,在生态上和依赖管理上保持跟CentOS 8.x兼容,本文为您介绍如何通过AOMS迁移工具实现CentOS 8.x到Anolis OS 8的迁移。
目录
打赏
0
0
0
0
3
分享
相关文章
|
3天前
|
Linux基础:文件和目录类命令分析。
总的来说,这些基础命令,像是Linux中藏匿的小矮人,每一次我们使用他们,他们就把我们的指令准确的传递给Linux,让我们的指令变为现实。所以,现在就开始你的Linux之旅,挥动你的命令之剑,探索这个充满神秘而又奇妙的世界吧!
45 19
|
17天前
|
Linux 常用文件查看命令
`cat` 命令用于连接文件并打印到标准输出,适用于快速查看和合并文本文件内容。常用示例包括:`cat file1.txt` 查看单个文件,`cat file1.txt file2.txt` 合并多个文件,`cat &gt; filename` 创建新文件,`cat &gt;&gt; filename` 追加内容。`more` 和 `less` 命令用于分页查看文件,`tail` 命令则用于查看文件末尾内容,支持实时追踪日志更新,如 `tail -f file.log`。
45 5
Linux 常用文件查看命令
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
88 19
【Linux】进程概念和进程状态
本文详细介绍了Linux系统中进程的核心概念与管理机制。从进程的定义出发,阐述了其作为操作系统资源管理的基本单位的重要性,并深入解析了task_struct结构体的内容及其在进程管理中的作用。同时,文章讲解了进程的基本操作(如获取PID、查看进程信息等)、父进程与子进程的关系(重点分析fork函数)、以及进程的三种主要状态(运行、阻塞、挂起)。此外,还探讨了Linux特有的进程状态表示和孤儿进程的处理方式。通过学习这些内容,读者可以更好地理解Linux进程的运行原理并优化系统性能。
30 4
|
23天前
|
Linux od命令
本文详细介绍了Linux中的 `od`命令,包括其基本语法、常用选项和示例。通过这些内容,你可以灵活地使用 `od`命令查看文件内容,提高分析和调试效率。确保理解每一个选项和示例的实现细节,应用到实际工作中时能有效地处理各种文件查看需求。
53 19
|
27天前
|
Linux:守护进程(进程组、会话和守护进程)
守护进程在 Linux 系统中扮演着重要角色,通过后台执行关键任务和服务,确保系统的稳定运行。理解进程组和会话的概念,是正确创建和管理守护进程的基础。使用现代的 `systemd` 或传统的 `init.d` 方法,可以有效地管理守护进程,提升系统的可靠性和可维护性。希望本文能帮助读者深入理解并掌握 Linux 守护进程的相关知识。
39 7
|
27天前
|
Linux 进程前台后台切换与作业控制
进程前台/后台切换及作业控制简介: 在 Shell 中,启动的程序默认为前台进程,会占用终端直到执行完毕。例如,执行 `./shella.sh` 时,终端会被占用。为避免不便,可将命令放到后台运行,如 `./shella.sh &`,此时终端命令行立即返回,可继续输入其他命令。 常用作业控制命令: - `fg %1`:将后台作业切换到前台。 - `Ctrl + Z`:暂停前台作业并放到后台。 - `bg %1`:让暂停的后台作业继续执行。 - `kill %1`:终止后台作业。 优先级调整:
45 5
Linux 进程管理基础
Linux 进程是操作系统中运行程序的实例,彼此隔离以确保安全性和稳定性。常用命令查看和管理进程:`ps` 显示当前终端会话相关进程;`ps aux` 和 `ps -ef` 显示所有进程信息;`ps -u username` 查看特定用户进程;`ps -e | grep &lt;进程名&gt;` 查找特定进程;`ps -p &lt;PID&gt;` 查看指定 PID 的进程详情。终止进程可用 `kill &lt;PID&gt;` 或 `pkill &lt;进程名&gt;`,强制终止加 `-9` 选项。
26 3
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
Linux部署 cd-pwd命令,cd 不写参数 就直接回到用户的HOME目录,pwd 查看当前的工作目录,pwd是常看当前目录的路径,无参数
Linux部署 cd-pwd命令,cd 不写参数 就直接回到用户的HOME目录,pwd 查看当前的工作目录,pwd是常看当前目录的路径,无参数

热门文章

最新文章