linux常用命令大全

作为开发者,Linux是我们必须掌握的操作系统之一。因此,在编写代码和部署应用程序时,熟练使用Linux命令非常重要。这些常用命令不得不会,掌握这些命令,工作上会事半功倍,大大提高工作效率。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kfm2JumJ-1682735868877)(2dd7f56c1aee47a3aa8fd8e4ba38ee1e-168266512929913.png)]

一. 文件和目录

cd命令

用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。

cd [目录路径]

其中,目录路径是您要更改为的新目录的路径。

以下是一些常用的用法:

命令执行
cd /home进入 ‘/ home’ 目录
cd …(两个点)返回上一级目录
cd …/… (两个点/两个点)返回上两级目录
cd进入个人的主目录
cd ~username进入个人(username)的主目录
cd -返回上次所在的目录

示例:

进入home目录下的jetsontx2nx606目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oaFsc6MG-1681791023699)(image-20230418091437487.png)]

pwd命令

显示当前所在的工作路径

示例:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F94PLKYh-1681791023707)(image-20230418085705118.png)]

ls命令

查看文件与目录的命令,list的缩写

ls [选项] [目录路径]

其中,选项是可选的,它们控制着ls命令的输出格式,目录路径是要列出其内容的目录的路径。

以下是一些常用选项:

命令执行
ls查看当前所在目录中的文件
ls -l以长格式(详细信息)列出目录中的所有文件和子目录。“ll” 等同于 “ls -l”
ls -a列出全部文件,包含隐藏文件
ls -h以人类可读的格式(例如K、M、G)列出文件大小。
ls -R连同子目录的内容一起列出(递归列出),等于该目录下的所有文件都会显示出来
ls -r以相反的顺序列出文件和目录。
ls -t按修改时间排序列出目录中的所有文件和子目录。
ls [0-9]显示包含数字的文件名和目录名

示例:

显示当前所在目录的详细资料

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-enboazky-1681791023711)(image-20230418091620869.png)]

cp命令

用于复制文件,copy的缩写,还可以把多个文件一次性地复制到一个目录下

cp [选项] 源文件 目标文件

其中,源文件是要复制的文件或目录的路径,目标文件是将源文件复制到的新位置的路径。

以下是一些常用选项:

选项执行
-a将文件的特性一起复制
-p连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份
-i若目标文件已经存在时,在覆盖时会先询问操作的进行
-r递归持续复制,用于目录的复制行为 //经常使用递归复制
-u目标文件与源文件有差异时才会复制

示例:
1.将名为file1.txt的文件从当前目录复制到名为dir2的目录中,可以使用以下命令:

cp file1.txt dir2/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iW9Yy2xX-1681791023712)(image-20230418120323193.png)]

2.将整个目录从当前目录复制到名为dir2的目录中,并且要包含所有子目录和文件,则可以使用以下命令:

cp -r dir1/ dir2/

mv命令

用于移动文件、目录或更名,move的缩写

mv [options] source destination

其中,source是要移动或重命名的原始文件或目录的路径,destination是新位置或新名称的路径。如果destination是现有目录,则将源文件/目录移动到该目录中;如果destination是新文件名,则会将源文件/目录重命名为destination

mv命令的一些常见选项包括:

选项执行
-fforce,强制执行操作,无需询问用户确认,如果目标文件已经存在,不会询问而直接覆盖
-i若目标文件已经存在,就会询问是否覆盖
-u若目标文件已经存在,且比目标文件新,才会更新
-v显示每个移动或重命名操作的详细输出。

示例:

1.将文件“file1.txt”移动到目录“dir1”,可以使用以下命令:

mv file1.txt dir1/

2.将文件“oldname.txt”重命名为“newname.txt”,可以使用以下命令:

mv oldname.txt newname.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-daIckgVA-1681791023715)(image-20230418093103827.png)]

rm命令

用于删除文件或目录,remove的缩写

rm [选项] 文件/目录

其中,选项是可选的,可以有多个,常见的选项包括:

选项执行
-f就是force的意思,忽略不存在的文件,不会出现警告消息
-i互动模式,在删除前会询问用户是否操作
-r递归删除,不提示确认,最常用于目录删除,是一个非常危险的参数

示例:

  1. 删除一个文件:

    rm myfile.txt
    
  2. 删除一个目录及其内容:

    rm -r dir2/
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FTQrsd9q-1681791023717)(image-20230418120840433.png)]

  3. 强制删除一个文件,不提示确认:

    rm -f myfile.txt
    

二、查看文件内容

cat命令

用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用

cat [选项] [文件]

其中,选项可以是以下任何组合:

选项执行
-n对每一行进行编号
-b对非空行进行编号
-s压缩空白行
-v显示非打印字符
-E在行末添加美元符号

基本用法:

命令执行
cat file1从第一个字节开始正向查看文件的内容
tac file1从最后一行开始反向查看一个文件的内容
cat -n file1标示文件的行数,并输出
more file1查看一个长文件的内容
head -n 2 file1查看一个文件的前两行
tail -n 2 file1查看一个文件的最后两行
tail -n +1000 file1从1000行开始显示,显示1000行以后的

这里的file1是一个文件名

示例:

1.显示filename.txt的1000行到3000行

cat filename.txt | head -n 3000 | tail -n +1000 

2.执行filename.txt,从第3000行开始,显示1000(即显示3000~3999行)

cat filename.txt | tail -n +3000 | head -n 1000 

3.将文件file1.txt和file2.txt连接起来,并显示行号

cat -n file1.txt file2.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OXFpjZCV-1681886028556)(image-20230419124415189.png)]

三、文件搜索

find命令

用来查找系统文件的,用于在指定目录下查找文件或目录。它通过输入路径和条件来搜索符合要求的文件或目录,并将结果输出到终端

具体用法如下:

find [path] [expression]

其中,path 指定了要搜索的路径,可以是绝对路径或相对路径。如果未指定路径,则默认为当前工作目录。

expression 则是搜索的条件表达式,用于限定搜索范围。例如,可以按文件名、类型、大小、权限等条件进行搜索。

常用示例:

1.从 ‘/’ 开始进入根文件系统搜索文件和目录

find / -name file1 

2.搜索属于用户 ‘user1’ 的文件和目录

find / -user user1 

3.搜索在过去100天内未被使用过的执行文件

find /usr/bin -type f -atime +100 

4.搜索在100天内被创建或者修改过的文件

find /usr/bin -type f -mtime -100

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hG1RZ5Cv-1681886028557)(image-20230419125534851.png)]

5.显示一个二进制文件、源码或man的位置

whereis halt 

6.显示一个二进制文件或可执行文件的完整路径

which halt 

7.删除大于50M的文件:

find /var/mail/ -size +50M -exec rm {} \;

8.查找Downloads/文件夹下的所有目录:

find Downloads/ -type d

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yZslLsrn-1681886028558)(image-20230419125733825.png)]

9.查找Desktop/路径下大小大于100M的文件:

find Desktop/ -size +100M

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T1gqVByJ-1681886028559)(image-20230419125919853.png)]

10.查找/path/to/folder路径下以".txt"结尾的文件

find /path/to/folder -name "*.txt"

四.文件的权限

chmod命令

文件的权限可以使用chmod命令进行修改,使用 “+” 设置权限,使用 “-” 用于取消

chmod [who] [+/-/=] [permission] file

其中,who表示要修改的用户或用户组,可以是以下之一:

  • u:代表文件所有者。
  • g:代表文件所属用户组。
  • o:代表其他用户。
  • a:代表所有用户,即u、g和o的组合。

"+“表示添加权限,”-“表示删除权限,”="表示设置权限。

permission可以是以下之一:

  • r:读权限。

  • w:写权限。

  • x:执行权限。

  • X:只有当文件是目录或者已经有可执行的权限时,才添加执行权限。

file表示要修改权限的文件名或目录名。

示例:

1.使用ls -lh 显示权限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jyqTM4I1-1681886028560)(image-20230419142335169.png)]

2.将文件file.txt的所有者的读写权限设置为可读可写:

chmod u+rw file.txt

3.将文件file.txt的所有者和所属用户组的读写权限设置为可读可写:

chmod ug+rw file.txt

4.将文件file.txt的所有用户的读权限设置为可读:

chmod a+r file.txt

5.设置directory1 目录的所有人(u)、群组(g)以及其他人(o)以读(r,4 )、写(w,2)和执行(x,1)的权限

chmod ugo+rwx directory1 

6.删除群组(g)与其他人(o)对directory1 目录的读写执行权限

chmod go-rwx directory1 

chown命令

chown命令用于更改文件或目录的所有者和/或所属组。它允许管理员将文件或目录的所有权转移给其他用户或组。,使用 “+” 设置权限,使用 “-” 用于取消,具体用法如下:

chown [选项] [所有者][:组] 文件名/目录名

其中,选项是可选的,可以是以下之一:

  • -c:只在更改执行后产生输出。
  • -f:强制进行更改,不显示错误信息。
  • -R:递归处理子目录及其内容。
  • -v:显示每次更改的详细信息。

所有者可以是用户名或用户ID,组可以是组名或组ID。如果省略组,则会将文件的所属组更改为新所有者的主要组。

示例:

1.改变一个文件的所有人属性

chown user1 file1 

2.改变一个目录的所有人属性并同时改变改目录下所有文件的属性

chown -R user1 directory1 

3.改变一个文件的所有人和群组属性

chown user1:group1 file1 

4.将文件file.txt的所有者更改为tom,所属组更改为users:

chown tom:users file.txt

5.将目录dir及其所有子目录和文件的所有者和所属组都更改为tom和users,则可以使用-R选项:

chown -R tom:users dir/

chgrp命令

chgrp命令用于改变文件所属用户组

chgrp [选项] [新的所属组名] 文件或目录

其中,[选项]表示可选参数,常见的有:

  • -R:递归地更改一个目录及其所有子目录和文件的所属组。
  • --reference=参考文件或目录:将指定文件或目录的所属组作为参考,并将需要更改的文件或目录的所属组设置为该参考文件或目录的所属组。

[新的所属组名]表示要将文件或目录更改为的新的所属组。

文件或目录表示要进行更改的文件或目录名称。

1.改变文件的群组

chgrp group1 file1 

2.将文件file.txt的所属组更改为group1

chgrp group1 file.txt

3.将目录/data及其子目录和文件的所属组都更改为group2

chgrp -R group2 /data

五、文本处理

grep命令

分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等

基本用法

grep [options] pattern [files]

其中,pattern 是要查找的模式,可以是普通字符串或正则表达式。files 则是要搜索的文件列表,可以是单个文件、多个文件或者使用通配符匹配多个文件。

常用选项包括:

选项执行
-i忽略大小写
-r递归搜索子目录中的文件
-w只匹配整个单词,而不是部分字符串
-n显示匹配行的行号
-c统计匹配的行数
-v显示不匹配的行

常用案例:

1.在文件 '/var/log/messages’中查找关键词"Aug"

grep Aug /var/log/messages 

2.在文件 '/var/log/messages’中查找以"Aug"开始的词汇

grep ^Aug /var/log/messages 

3.选择 ‘/var/log/messages’ 文件中所有包含数字的行

grep [0-9] /var/log/messages 

4.在目录 ‘/var/log’ 及随后的目录中搜索字符串"Aug"

grep Aug -R /var/log/*

5.将example.txt文件中的 “string1” 替换成 “string2”

sed 's/stringa1/stringa2/g' example.txt 

6.从example.txt文件中删除所有空白行

sed '/^$/d' example.txt 

7.使用正则表达式进行高级搜索。例如,要查找以数字开头的行,可以使用以下命令:

grep ^[0-9] file1.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wvrdkg91-1681951818655)(image-20230419192049431.png)]

paste命令

paste命令用于合并多个文件的行,将它们按列对齐并输出到标准输出。使用以下语法来使用

paste [OPTION]... [FILE]...

示例:

有两个文件 file1.txtfile2.txt,将它们的每一行合并在一起

paste file1.txt file2.txt

这将输出类似于以下内容的结果:

Line 1 from file1.txt    Line 1 from file2.txt
Line 2 from file1.txt    Line 2 from file2.txt
Line 3 from file1.txt    Line 3 from file2.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2bxWk1qV-1681951690356)(image-20230419193601975.png)]

2.合并两个文件或两栏的内容,中间用"+"区分

paste -d '+' file1 file2 

3.如果只想合并特定的行数,可以使用 headtail 命令将其与 paste 命令一起使用。例如,要合并文件 file1.txt 的前10行和文件 file2.txt 的后5行,使用以下命令:

head -n 10 file1.txt | paste -d '\t' - <(tail -n 5 file2.txt)

这将输出类似于以下内容的结果:

Line 1 from file1.txt    Line 996 from file2.txt
Line 2 from file1.txt    Line 997 from file2.txt
Line 3 from file1.txt    Line 998 from file2.txt
Line 4 from file1.txt    Line 999 from file2.txt
Line 5 from file1.txt    Line 1000 from file2.txt

sort命令

用于对文本文件进行排序。

该命令的基本语法为:

sort [options] [file]

其中,[options] 为可选参数,用于控制排序的方式和输出格式;[file] 则表示要排序的文件路径。

以下是 sort 命令的一些实例:

1.排序两个文件的内容

sort file1 file2 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nKRFThqK-1681951690358)(image-20230419194439478.png)]

2.对文件进行反向排序:

sort -r file.txt

3.按照数值大小排序:

sort -n file.txt

4.忽略行首空格并按照第二个字段进行排序:

sort -k 2 file.txt

5.忽略行首空格并按照第二个字段进行数值排序:

sort -n -k 2 file.txt

6.取出两个文件的并集(重复的行只保留一份)

sort file1 file2 | uniq 

7.删除交集,留下其他的行

sort file1 file2 | uniq -u 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-90kemO22-1681951690359)(image-20230419194727568.png)]

8.取出两个文件的交集(只留下同时存在于两个文件中的文件)

sort file1 file2 | uniq -d 

9.对文件file1.txt进行排序,并将结果保存到file2.txt中:

sort file1.txt > file2.txt

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jYjNGZQK-1681951690360)(image-20230419200132449.png)]

comm命令

comm 命令是一个用于比较两个已排序的文件行的工具。它可用于找到两个文件中共有的行、仅在第一个文件中独有的行,以及仅在第二个文件中独有的行。

comm 命令的基本语法如下:

comm [OPTION]... FILE1 FILE2

其中 FILE1FILE2 是要比较的两个已排序的文件。OPTION 是一些可选的参数,可以控制输出格式等。

常用的选项包括:

选项执行
-1隐藏仅出现在第一个文件中的行
-2隐藏仅出现在第二个文件中的行
-3隐藏同时出现在两个文件中的行
-i在比较时忽略大小写

常用示例:

1.比较两个文件的内容只删除 ‘file1’ 所包含的内容

comm -1 file1 file2 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wKRqJhFp-1681951690361)(image-20230419195757460.png)]

2.比较两个文件的内容只删除 ‘file2’ 所包含的内容

comm -2 file1 file2 

3.比较两个文件的内容只删除两个文件共有的部分

comm -3 file1 file2 

六、打包和压缩文件

tar命令

对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压

常用的选项

选项执行
-c新建打包文件
-t查看打包文件的内容含有哪些文件名
-x解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
-j通过bzip2的支持进行压缩/解压缩
-z通过gzip的支持进行压缩/解压缩
-v在压缩/解压缩过程中,将正在处理的文件名显示出来
-ffilename :filename为要处理的文件
-C dir指定压缩/解压缩的目录dir

常用的示例:

1.创建 tar 包

tar -cvf archive.tar file1 file2

这条命令将会创建名为 archive.tar 的归档文件,并将指定的文件(file1、file2)添加到该文件中。 -c 选项表示“创建”,-v 表示“详细”(显示出打包过程中的所有文件),-f 指定了输出的文件名。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fMOycLMg-1681951744655)(image-20230419202333311.png)]

这个图片中,原本只有file1.txt,file2.txt,filename.txt,使用tar -cvf abc.tar file1.txt file2.txt filename.txt,将它们打包

2.解压 tar 包

tar -xvf archive.tar

这条命令将会解压名为 archive.tar 的归档文件,并将其中的内容提取到当前目录中。 -x 选项表示“解压”。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1RK4RPoZ-1681951744662)(image-20230419202612368.png)]

这个图片中,原本只有abc.tar,使用tar -xvf abc.tar ,将它们file1.txt file2.txt filename.txt解压到当前目录

3.同时进行压缩和打包

tar -czvf archive.tar.gz file1 file2 ...

这条命令将会创建名为 archive.tar.gz 的归档文件,并将指定的文件(file1、file2)添加到该文件中,并使用 gzip 进行压缩。 -z 选项表示“使用 gzip 压缩”。

4.解压一个叫做 'file1.bz2’的文件

bunzip2 file1.bz2 

5.压缩一个叫做 ‘file1’ 的文件

bzip2 file1 

6.解压一个叫做 'file1.gz’的文件

gunzip file1.gz 

7.压缩一个叫做 'file1’的文件

gzip file1 

8.最大程度压缩

gzip -9 file1 

9.创建一个叫做 ‘file1.rar’ 的包

rar a file1.rar test_file 

10.同时压缩 ‘file1’, ‘file2’ 以及目录 ‘dir1’

rar a file1.rar file1 file2 dir1 

11.解压rar包

rar x file1.rar 

12.创建一个zip格式的压缩包

zip file1.zip file1 

13.解压一个zip格式压缩包

unzip file1.zip 

14.将几个文件和目录同时压缩成一个zip格式的压缩包

 zip -r file1.zip file1 file2 dir1 

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

常用命令:

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

其中:

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

  1. shutdown -h now 命令会立即关闭系统,并向所有登录用户发送关机通知。它会正常地卸载文件系统并停止所有进程。
  2. init 0 命令会将系统切换到运行级别0(也称为"单用户模式"),这个级别只运行必要的服务和进程,然后停止系统。这个命令比较快速,但是不会正常卸载文件系统或向用户发送关机通知。
  3. telinit 0 命令与 init 0 相似,也会将系统切换到运行级别0,但是它会先执行 /etc/init.d/rc 脚本,关闭所有服务并卸载文件系统,然后再停止系统。这个命令比较缓慢,但是会正常地关闭系统并向用户发送关机通知。

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

八、进程相关的命令

jps命令

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

示例:

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

jps 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LG7hCZE2-1682037672352)(image-20230419205119828.png)]

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

jps -l:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FQOXr5jd-1682037676169)(image-20230419205110881.png)]

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

jps -m

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

jps -v 

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

jps -q 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ti4LHB7-1682037676170)(image-20230419205136372.png)]

6.将选项传递给JVM。

jps -Joption 

ps命令

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

常用选项:

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

常用示例:

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

ps aux 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2PqFh1Ij-1682037676172)(image-20230419204931996.png)]

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

ps ax 

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

ps -lA 

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

ps axjf 

kill命令

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

kill命令的基本语法如下:

kill [signal] PID

其中,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 输出:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v0LAMLIM-1682037676173)(image-20230419205608239.png)]

2:得到指定信号的数值

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AnbsOUuK-1682037676174)(image-20230419205648706.png)]

3.强制终止进程

kill -9 PID

4.向多个进程发送信号

kill -signal PID1 PID2 ...

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

killall命令

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

 killall [选项] [进程名]

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

一些常用选项包括:

  • -Z 只杀死拥有scontext 的进程
  • -e 要求匹配进程名称
  • -I 忽略小写
  • -g 杀死进程组而不是进程
  • -i 交互模式,杀死进程前先询问用户
  • -l 列出所有的已知信号名称
  • -q 不输出警告信息
  • -s 发送指定的信号
  • -v 报告信号是否成功发送
  • -w 等待进程死亡
  • –help 显示帮助信息
  • –version 显示版本显示

示例

1:杀死所有同名进程

  killall firefox

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

  killall -9 bash

3.向进程发送指定信号

  killall -TERM ngixn 或者 killall -KILL nginx

top命令

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vnmWzRvu-1682037676175)(image-20230420090436562.png)]

在这个列表中,每行代表一个进程,列出了该进程的进程 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 命令不带任何参数,可以显示最近执行的命令历史记录。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rK9J7Ukw-1682037676177)(image-20230420091312468.png)]

2.按照编号查找命令

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NLiJtFQx-1682037676178)(image-20230420091425895.png)]

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

3.搜索命令历史记录

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

history | grep ls

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cb28fmfN-1682037676179)(image-20230420091535256.png)]

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

4.清除命令历史记录

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

history -c

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

man命令

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

常用示例:

1.查看命令手册页

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

man man

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SaRN3fCw-1682037676179)(image-20230420094040710.png)]

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

2.搜索手册页

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

man -k network

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

sudo命令

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

常用示例:

1.执行单个命令

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

sudo touch testfile

2.切换到 root 用户

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

sudo -i

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LSYRFZag-1682037676180)(image-20230420094314398.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kN9Skudc-1682037676181)(image-20230420094341121.png)]

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

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

sudo -u user1 less /var/log/messages

4.查看 sudo 命令的配置

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

sudo -V

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VvczxJKf-1682037676182)(image-20230420094607654.png)]

5.退出root用户

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

exit

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-evR7940K-1682037676182)(image-20230420094820201.png)]

总结

Linux 常用命令是每个 Linux 用户必须掌握的基本技能之一。这些命令可以使用户更高效地管理文件系统、安装软件和维护系统。在本博客中,介绍了许多常用的 Linux 命令,并提供了详细的解释和示例。这些命令包括文件和目录操作命令,如 cd、ls、mkdir、rm 和 mv;文件查找和文本处理命令,如 grep和 find;系统管理命令,如 ps、top、kill 和 shutdown;以及用户权限和安全性相关的命令,如 chmod、sudo 和 su。

总的来说,Linux 命令的使用需要建立在对 Linux 操作系统的深入理解和熟悉上。通过学习这些命令,用户可以更好地理解 Linux 系统的工作原理,并且能够更加高效地完成日常的系统管理和维护任务。此外,为了便于学习和使用这些命令,用户还应该掌握一些基本的 Linux 操作技巧,例如使用 man 命令查看命令帮助信息、使用 tab 键自动补全命令、以及利用管道符号将不同的命令组合起来使用等。总之,学习并掌握常用的 Linux 命令对于每个 Linux 用户来说都是必不可少的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/15546.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OJ刷题 第十三篇

22102 - 将字符串反序 时间限制 : 1 秒 内存限制 : 128 MB 请将一个给定的字符串反序(字符长度为1到10000&#xff0c;且有可能包含空格)。 输入 反序前的字符串 输出 反序后的字符串 样例 输入 abcd 输出 dcba 答案&#xff1a; C版本1&#xff1a;&#xff08;掌握&…

( 哈希表) 217. 存在重复元素 ——【Leetcode每日一题】

❓217. 存在重复元素 难度&#xff1a;简单 给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 &#xff0c;返回 true&#xff1b;如果数组中每个元素互不相同&#xff0c;返回 false 。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3,1] 输出&#xff1a;true…

冷链物流运转 3D 可视化监控,助力大数据实时监控

智慧物流是以信息化为依托并广泛应用物联网、人工智能、大数据、云计算等技术工具&#xff0c;在物流价值链上的 6 项基本环节&#xff08;运输、仓储、包装、装卸搬运、流通加工、配送&#xff09;实现系统感知和数据采集的现代综合智能型物流系统。随着冷链信息化、数字化发展…

【Linux】8、查看 Linux 主机运行状态、压缩和解压缩命令、Linux 的环境变量

目录 一、查看 Linux 系统资源占用二、硬盘信息监控三、网络监控命令四、Linux 文件上传和下载命令五、压缩和解压(1) 压缩格式(2) tar 命令 六、Linux 的环境变量 一、查看 Linux 系统资源占用 ✒️ 可通过 top 命令查看系统的 CPU、内存的使用情况&#xff08;类似 Windows …

AutoGPT安装教程

最近安装AutoGPT时遇到了一些问题&#xff0c;写下这篇文章记录一下 1 下载AutoGPT AutoGPT链接&#xff1a;https://github.com/Significant-Gravitas/Auto-GPT/tree/v0.2.2 下载AutoGPT 推荐下载stable 版本 2 申请openai 的api key 获取api的key&#xff0c;这里就不介…

【MySQL高级】——InnoDB索引MyISAM索引

一、索引概述 MySQL官方对索引的定义为&#xff1a;索引&#xff08;Index&#xff09;是帮助MySQL高效获取数据的数据结构。 索引的本质&#xff1a;索引是数据结构。你可以简单理解为“排好序的快速查找数据结构”&#xff0c;满足特定查找算法。 这些数据结构以某种方式指向…

史上最全的接口测试,吐血整理从零到接口自动化实战...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 接口测试&#xf…

C++中的stack容器

文章目录 stack的介绍stack的使用 stack的介绍 stack是一种容器适配器&#xff0c;专门用在具有后进先出操作特性的环境中&#xff0c;只能在容器的一端进行插入删除&#xff1b;stack是作为容器适配器被实现的&#xff0c;容器适配器即是对特性类封装作为其底层的容器&#xf…

SCADA平台的HMI功能

01 前言 虹科Panorama SCADA平台支持桌面HMI、Web HMI和移动HMI的功能。桌面HMI主要是在桌面工作站实现数据可视化&#xff0c;能够获取到最全面的数据信息以及实现功能&#xff1b;Web HMI可以通过在软件中添加Web HMI服务器&#xff0c;运行程序后&#xff0c;可以在Web 客户…

被修饰成单栋的倾斜摄影处理思路

作者&#xff1a;kele 前言 倾斜摄影数据是三维项目系统中的常客。在某些项目中&#xff0c;为了给倾斜摄影上的建筑赋予属性信息&#xff0c;实现点击建筑高亮并展示属性的功能&#xff0c;客户将倾斜摄影数据进行了模型单体化&#xff08;使用pdmodeler或者其它软件&#xf…

Apache Flink

Apache Flink 1 Flink的特点2 流式计算架构2.1 Lambda架构2.2 Kappa架构2.3 IOTA架构 3 Flink部署3.1 Standalone模式3.2 Standalone-HA模式3.3 Flink on Yarn模式3.3.1 Session mode3.3.2 Per-Job mode3.3.3 Application mode 4 Flink运行时的组件4.1 JobManager&#xff08;作…

【嵌入式环境下linux内核及驱动学习笔记-(8-内核 I/O)-信号驱动】

目录 3 信号驱动的异步通知3.1 linux异步通知编程3.1.1 什么是信号3.1.2 信号的工作流程: 3.2. 应用层3.2.1 信号接收 signal函数3.2.2 应用层 fcntl 函数3.2.3 应用层信号驱动机制步骤 3.3 驱动层3.3.1 驱动层模板3.3.2 驱动层 实现fasync函数3.3.3 fasync_helper3.3.4 struct…

从历史天气预报 API 看气象大数据的商业价值

引言 近年来&#xff0c;随着气象观测技术的不断提升和气象大数据的快速发展&#xff0c;越来越多的企业开始将气象数据应用于商业领域。其中&#xff0c;历史天气预报 API 作为一种可获取历史气象数据的接口&#xff0c;具有广泛的商业应用价值。 本文将从历史天气预报 API …

Delphi 知识 彻底搞懂Delphi中的匿名方法

前言&#xff1a; 顾名思义&#xff0c;匿名方法是一个没有与之相关的名字的过程或函数。一个匿名方法将一个代码块视为一个实体&#xff0c;可以分配给一个变量或作为一个方法的参数使用。此外&#xff0c;匿名方法可以引用变量&#xff0c;并在定义该方法的上下文中为变量绑定…

【Unity入门】19.定时调用Invoke

【Unity入门】定时调用Invoke 大家好&#xff0c;我是Lampard~~ 欢迎来到Unity入门系列博客&#xff0c;所学知识来自B站阿发老师~感谢 &#xff08;一&#xff09;计时器 &#xff08;1&#xff09;Invoke 单词调用 计时器我们并不陌生&#xff0c;在cocos上有着schedule类是…

056:cesium 七种方法设置颜色

第056个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中设置颜色,这里用到了7种方法,查看API,还有很多种方法 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共115行)相关API参考:专栏目标示例效果 配置…

【C++】map和set的模拟实现

一、思路 1. 改造RBTree 现在我们有一棵 R B T r e e RBTree RBTree&#xff0c;那么如何用它实现 m a p map map和 s e t set set&#xff1f;我们知道 m a p map map是 KV 结构&#xff0c; s e t set set是 K 结构&#xff0c;传统思路是两份 R B T r e e RBTree RBTree的代…

【MATLAB图像处理实用案例详解(12)】——利用BP神经网络实现图像压缩

目录 一、图像压缩二、BP神经网络实现图像压缩原理三、算法步骤3.1 图像块划分3.2 归一化3.3 建立BP神经网络3.4 保存结果 四、效果演示 一、图像压缩 常见的文件压缩软件如WinZip、WinRAR等采用的是无损压缩&#xff0c;能够完全恢复原文件内容。多媒体信息具有信息量大、冗余…

STM32F4 HAL库使用DMA进行ADC采样实时发送波形到串口显示(包含傅里叶变换)

1.总体逻辑 按下STM32F4的KEY0按键&#xff0c;通过外部中断的方式对按键进行检测&#xff0c;然后开启一次带DMA的固定点数的ADC采集&#xff0c;采集完成后在DMA的中断发送采集到的数据&#xff0c;然后清空数据区准备下一次的按键中断。电脑接受到串口数据后对数据进行简单…

【JavaEE】SpringBoot的日志

目录 日志作用 SpringBoot日志框架 日志打印 日志级别 类型 作用 修改级别 日志永久化 配置日志文件目录 配置日志文件名 简化日志打印和永久化——lombok 日志作用 问题定位&#xff1a;可以帮助开发人员快速找到问题出现的位置系统监控&#xff1a;可以把系统的运…