Linux命令

Linux命令

Linux命令概览

在这里插入图片描述

Linux常用命令之文件和目录处理命令

命令格式:命令 [-选项] [参数]
例子:ls -la /etc
说明:1、个别命令使用不遵循此格式 []这种符号表示可以省略
2、当有多个选项时,可以写在一起
3、简化选项(一般用一个-)与完整选项(-般用两个--)
比如ls -a等于 ls --all
上面的便是Linux系统中的一般命令格式,基本上所有命令都是遵循这种语法格式〈个别命令除外)。

目录处理命令

一、显示目录文件命令:ls

1、命令名称:ls
2、英文原意:list
3、命令所在路径:/bin/ls
4、执行权限:所有用户
5、功能描述:显示目录文件
6、语法:ls 选项 [-ald] [文件或目录]
		-a 显示所有文件,包括隐藏文件
		-l 详细信息显示
		-d 仅显示目录名,而不显示目录下的内容列表
		-h 人性化显示(hommization)
		-i 查看任意一个文件的i节点(类似于身份证唯一信息)
		-t 用文件和目录的更改时间排序;可以用第一个显示的文件判断最近修改的文件注意:.开头的文件除非是目录,否则就是隐藏文件
		注意:.开头的文件除非是目录,否则就是隐藏文件

在这里插入图片描述
上面我们分别列出了ls的各种命令组合显示效果。我们以-rw-------.1 root root 1.3k Mar 11 08:05anaconda-ks.cfg为例解析每个字段:
1、-rw—第一位表示文件类型,-表示是二进制文件,d表示目录,I表示软连接文件。后面的每三个为一组:
rw- — ---
u g o
u (user)所有者g (group)所属组o (other)其他人
r读 w写 x执行 -无权限
2、1 引用计数,表示文件被引用过多少次
3、root 这第一个root表示所有者,一般创建一个文件,所有者默认是创建者。
4、root这第二个root表示所属组。
5、1.3K表示文件字节大小,不带单位表示字节
6、ar 11 08:05表示文件的最后修改时间。注意:Linux没有明确的创建时间,只有最后一次访问时间、文件的状态修改时间、文件的数据修改时间
7、anaconda-ks.cfg表示文件名
在这里插入图片描述

二、创建目录命令: mkdir

1、命令名称:mkdir
2、英文原意:make directories
3、命令所在路径:/bin/mkdir
4、执行权限︰所有用户
5、功能描述︰创建新目录
6、语法:mkdir [-p][目录名]
	-p 递归创建
例子:创建单个目录:mkdir /tmp/vae.txt
创建多个目录: mkdir /tmp/a.txt /tmp/b.txt
注意:1、创建的目录已经存在,那么Linux会提示我们Linux无法创建它。
2、不带任何参数运行mkdir命令会在当前目录下创建目录。
3、不带上-p,如果新建的文件上级目录不存在则不会执行成功这种说法是错误的。加或者不
加上-p前面的目录没有得都会依次创建。
4、创建目录的首要条件是,在想要创建目录的目标路径下你必须具有访问权限。

在这里插入图片描述

三、切换目录命令: cd

1、命令名称: cd
2、英文原意:change directory
3、命令所在路径: shell 内置命令
4、执行权限:所有用户
5、功能描述︰切换目录
6、语法: cd【目录名】
例子:切换到指定目录:cd /tmp/vae
回到上一级目录:cd ..
还是在当前目录:cd .
返回上两级目录:cd ../..	
返回进入此目录之前所在的目录: cd -

在这里插入图片描述

四、shell内置命令和外部命令的区别

	大家可以看到前面的三个命令,ls命令和 mkdir命令都有命令的所在路径,而cd命令我们说是shell内置命令。这两者便是Linux内置命令和外部命令。
内部命令实际上是 shell程序的一部分,其中包含的是一些比较简单的 linux系统命令,这些命令由shell程序识别并在 shell程序内部完成运行,通常在linux系统加载运行时 shell就被加载并驻留在系统内存中。内部命令是写在 bashy源码里面的,其执行速度比外部命令快,因为解析内部命令 shell 不需要创建子进程。比如:exit,history,cd,echo等。
外部命令是linux系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在shell 中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin…等等。可通过echo $PATH命令查看外部命令的存储路径,比如:ls、vi等。
用type命令可以分辨内部命令与外部命令∶

在这里插入图片描述
内部命令和外部命令最大的区别之处就是性能。内部命令由于构建在shell中而不必创建多余的进程,要比外部命令执行快得多。因此和执行更大的脚本道理一样,执行包含很多外部命令的脚本会损害脚本的性能。

五、显示当前目录命令:pwd

1、命令名称: pwd
2、英文原意:print working directory
3、命令所在路径:/bin/pwd
4、执行权限:所有用户
5、功能描述:显示当前目录
6、语法:pwd
例子∶显示当前目录:pwd

在这里插入图片描述

六、删除空目录命令:rmdir

1、命令名称: rmdir
2、英文原意: remove empty directories
3、命令所在路径:/bin/rmdir
4、执行权限:所有用户
5、功能描述:删除空目录(如果目录下存在文件则不能删除)
6、语法: rmdir【空目录名】
例子:删除指定空目录: rmdir /tmp/a

在这里插入图片描述
注意∶由于此命令只能删除空目录,在实际操作中应用的不多,后面我们讲解rm 命令可以替代。

七、复制文件或目录命令:cp

1、命令名称:cp
2、英文原意:copy
3、命令所在路径:/bin/cp 
4、执行权限:所有用户
5、功能描述:复制文件或目录
6、语法:cp -rp【原文件或目录】【目标目录】
	-r复制目录
	-p 保留文件属性
	例子︰比如我们将root目录下的install.log文件复制到 tmp目录下

在这里插入图片描述
可以用于复制后文件改名,比如我们将root目录下的installlog 文件复制到 tmp的copyinstall.log文件
在这里插入图片描述
还可同时复制多个文件,注意复制目录的时候要加-r选项。加-p属性之后会将原文件的一些属性比如修改时间等也原封不动的复制过去。如果不加-p属性,那么复制后的文件修改时间为当前系统时间。

八、剪切文件或目录命令:mv

1、命令名称:mv
2、英文原意:move
3、命令所在路径:/bin/mv
4、执行权限︰所有用户
5、功能描述:剪切文件、改名
6、语法:mv[原文件或目录][目标目录]
例子∶在tmp目录下创建目录 tmp1,然后在 tmp1目录下创建目录tmp1_1,然后命令mv/tmp/tmp1/tmp1_1 /tmp 将tmp1目录下的tmp1_1剪切到 tmp目录下。

在这里插入图片描述

九、删除文件或目录命令: rm

1、命令名称: rm
2、英文原意:remove
3、命令所在路径:/bin/rm
4、执行权限:所有用户
5、功能描述:剪切文件、改名
6、语法:rm-rf[文件或目录]
-r删除目录
-f 强制执行
例子︰在 tmp目录下有两个目录 tmp1和 tmp1_1,rm -r tmp1_1是删除这个目录,但是需要输入y来确认	
rm -rf tmp1是强制删除 tmp1目录,不需要输入y来确认,这种做法很简单,但是容易误删文件,没有反悔的机会
rm -rf tmp1 tmp2同时删除两个文件

在这里插入图片描述

文件处理命令

一、创建空文件命令:touch

1、命令名称: touch
2、英文原意︰
3、命令所在路径:/bin/touch
4、执行权限:所有用户
5、功能描述︰创建空文件
6、语法: touch【文件名】
例子︰在 tmp目录下创建tmp.log 文件

在这里插入图片描述
文件时,文件名不要有空格,不然就是创建了两个文件
touch progrom files这是创建了两个文件,progrom和files
在这里插入图片描述
如果我们想创建一个文件名为 progrom files ,应该用引号括起来(尽量避免文件名包含空格) touch “progrom files”
在这里插入图片描述

二、显示文件内容命令(适合内容较少的文件): cat

1、命令名称: cat
2、英文原意︰	
3、命令所在路径:/bin/cat
4、执行权限:所有用户
5、功能描述:显示文件内容(只能显示内容较少的文件)
6、语法:cat[文件名]
	-n显示文件行号
例子:通过不加参数-n和加参数-n,显示/etc/issue的内容

在这里插入图片描述
注意:此命令只能显示文件内容比较少的文件,如果文件内容很多,用cat命令是不合适的,视觉效果是屏幕不断滚动更新。

三、反向显示文件内容命令(适合内容较少的文件): tac

1、命令名称: tac
2、英文原意:
3、命令所在路径:/bin/tac
4、执行权限:所有用户
5、功能描述:显示文件内容(只能显示内容较少的文件)
6、语法:tac[文件名]
例子:显示/etc/issue的内容
在这里插入图片描述

四、分页显示文件内容命令(不能向前翻页): more

1、命令名称:more
2、英文原意:
3、命令所在路径:/bin/more
4、执行权限:所有用户
5、功能描述:分页显示文件内容
6、语法:more[文件名]
	(空格)或f翻页(一页一页的往后显示)
	(Enter)换行(一行一行的往后显示)
	q或Q退出
例子︰查看etc目录下的services文件信息:more /etc/services

在这里插入图片描述

五、分页显示文件内容命令(可以前后翻页): less

1、命令名称:less
2、英文原意:
3、命令所在路径:/usr/bin/less
4、执行权限︰所有用户
5、功能描述:分页显示文件内容
6、语法:less[文件名]
	(空格)或f 或PgDn 翻页(一页一页的往后显示)
	PgUp向前翻页
	(Enter)换行或向下的箭头(一行一行的往后显示)
	向上的箭头(一行一行的往前显示)
	q或Q退出
	输入/想搜索的字符,然后回车键
例子:查看etc目录下的services文件信息:less/etc/services。这个比较简单,我们就不截图演示了,主要是最后提到的搜索功能,我们在进入命令之后,输入/想搜索的字符,然后回车键,如下:

在这里插入图片描述
回车之后,如下显示:
在这里插入图片描述

六、显示文件内容命令(指定行数): head

1、命令名称: head
2、英文原意:
3、命令所在路径:/usr/bin/head 
4、执行权限:所有用户
5、功能描述:显示文件的前面几行
6、语法:head[文件名]
	-n指定显示的行数
	不加-n 默认显示前20行数据
例子︰显示etc目录下的services文件前面20行head -n 20 /etc/services

在这里插入图片描述

七、反向文件内容命令(文件即时更新后也能动态显示,多用于日志文件显示)∶tail

1、命令名称:tail
2、英文原意:
3、命令所在路径:/usr/bin/tail 
4、执行权限:所有用户
5、功能描述:显示文件的后面几行
6、语法:tail[文件名]
	-n指定显示的行数
	-f动态显示文件末尾内容(即文件实时变化,那么显示内容也会随之变化)
例子︰显示etc目录下的 services文件后面20行tail -n 20 -f /etc/services

在这里插入图片描述
如果我们想结束加上-f显示的tail命令,通过Ctrl+C。

Linux常用命令之链接命令和权限管理命令

链接命令

一、生成链接文件命令:In

1、命令名称:In
2、英文原意:link
3、命令所在路径:/bin/link 
4、执行权限:所有用户
5、功能描述:生成链接文件
6、语法:ln-s[源文件][目标文件]
	-s创建软链接
	不加-s 创建硬链接	
例子:一、创建文件letc/issue 的软链接/tmp/issue.soft: In -s /etc/issue /tmp/issue.soft
二、创建文件/etc/issue 的硬链接/tmp/issue.hard: In /etc/issue /tmp/issue.hard

在这里插入图片描述

我们可以看到:	
第一:软链接前面是Ⅰ开头的(link),而硬链接是–开头,表示文件
第二:软链接所有者和所属组具有全部操作的权限,rwxrwxrwx;而硬链接不是。也就是软链接的前面都是Irwxrwxrwx
第三:软链接类似与windows 的快捷方式,有一个明显的箭头指向,而指向的是源文件
第四:硬链接文件除了文件名与源文件不一样,其余所有信息都是一样的。类似于cp复制操作。但是又和复制不一样,硬链接可以同步更新。
第五:通过ls -i操作,来查看文件的i节点。发现硬链接和源文件的i节点是相同的,而软链接与源文件的i节点是不同的
第六:不允许将硬链接指向目录;不允许跨分区创建硬链接

在这里插入图片描述

权限管理命令

一、更改文件或目录权限命令:chmod

1、命令名称:chmod
2、英文原意:change the permissions mode of a file
3、命令所在路径:/bin/chmod
4、执行权限:所有用户
5、功能描述:改变文件或目录权限
6、语法:chmod[{ugoa}{+-=}{rwx}][文件或目录]
	[mode=421][文件或目录]
	-R递归修改
不是每一个Linux用户都有权限更改某个文件或目录权限,能更改文件或目录权限的只有两种用户
1、文件的所有者。我们通过ls命令查看某个文件的详细信息,可以看到该文件的所有者。
2、root用户,这不用多说, root用户是linux系统权限最大的用户。别人不能干的事, root用户都能干。
对于上面的语法chmod[{ugoa}{+-=}(rwx})][文件或目录],我们要知道ugoa分别是:u:表示所有者,g:表示所属组,o:表示其他人,a:表示所有人。而rwx表示的意思如下:
对于[mode=421][文件或目录],这是我们将权限用数字表示,其中r表示4,w表示2,x表示1,分别是2的0次方,1次方,2次方.那么我们可以这样理解:具有rwx权限的数字就是7,具有rw-权限的数字是6,具有r--权限的数字是4.
r:read就是读权限 --数字4表示
w:write就是写权限 --数字2表示
x:excute就是执行权限 --数字1表示
“-”后面一共分三组,第一组是创建者的权限,第二组是创建者所在组的权限,第三组是所有人的权限。
范例1∶我们赋予 tmp目录下的 tmp.log 所有者x的权限;赋予所属组w权限,其他人w权限。
chmod u+x /tmp/tmp.log
chmod g+w,o+w /tmp/tmp.log

在这里插入图片描述

将上面例子改为用数字来操作,也就是说我们要给 tmp.log赋予的文件权限是rwxrw-rw-,用数字表示是766。chmod 766 tmp.log

在这里插入图片描述

我们还可以递归赋予权限,也就是加上-R参数给指定目录下的所有文件或目录赋予指定权限。范例2∶给tmp目录下所有文件和目录赋予776的权限
chmod -R 776 /tmp

在这里插入图片描述

二、改变文件或目录所有者命令: chown

1、命令名称:chown
2、英文原意:change file ownership
3、命令所在路径:/bin/chown
4、执行权限:所有用户
5、功能描述:改变文件或目录的所有者
6、语法:chmod[用户][文件或目录]
注意:能更改文件或目录的所有者用户是root
这里我们通过useradd[用户名]命令创建用户,然后通过passwd[用户名]输入密码,这两个命令后面会将。我们通过这两个命令创建vae 用户

在这里插入图片描述

然后我们将tmp.log的所有者更改为vae用户: chown vae tmp.log

在这里插入图片描述

三、改变文件或目录所属组命令: chgrp

1、命令名称: chgrp
2、英文原意: change file group ownership
3、命令所在路径:/bin/chown
4、执行权限:所有用户
5、功能描述:改变文件或目录的所属组
6、语法: chgrp [用户组][文件或目录]
注意∶能更改文件或目录的所有者用户是root

四、显示、设置文件的缺省权限命令:umask

1、命令名称:umask
2、英文原意:the user file-creation mask
3、命令所在路径: shell 内置命令
4、执行权限:所有用户
5、功能描述:显示、设置文件的缺省权限
6、语法:umask[-S]
	-S 以rwx形式显示新建文件的缺省权限
注意:可能大家不太明白这个命令的意思,我们分别执行umask和umask -S ,如下:

在这里插入图片描述

其中 umask执行显示结果是0022,第一个0表示特殊权限,后面我们会单独进行讲解有哪几种特殊权限。022表示权限的掩码值,我们用777减去022得到755(是每一位相减),表示的就是下面通过加上-S输出的rwxr-xr-x,这个值用数字表示就是755.
这个意思说明创建一个文件的默认权限所有者为rwx,所属组为rx,其他人为rx。也就是说创建一个新文件默认权限为rwxr-xr-x,我们创建一个文件来验证一下:

在这里插入图片描述

我们发现使用touch命令创建了一个文件 a.txt,然后发现权限并不是rwxr-xr-x,而是 rw-r--r--。对比发现少了三个x,也就是少了可执行权限。这是为什么呢?
这是因为在 Linux系统中,所有新创建的文件都是没有可执行权限的。这是出于Linux系统的一种自我保护,因为类似的病毒木马程序都是具有可执行权限的。所以在 Linux系统中,新创建的文件是没有可执行权限的。
那么我们如何设置默认权限呢?比如我们想将新创建的文件权限设置为rwxr-xr--,也就是754。我们用777减去754得到023。也就是通过执行umask 023来完成默认权限设置。

在这里插入图片描述

Linux常用命令之文件搜索命令

最强大的搜索命令:find

	首先进行一点说明,find命令是我们在 Linux系统中用来进行文件搜索用的最多的命令,功能特别强大。但是我们要说的是尽量少用find命令去执行搜索任务,就算要搜索我们也应该尽量的缩小范围,也不要在服务器使用高峰期进行文件搜索,因为搜索也是很占系统资源的。这就需要我们在进行Linux文件整理的时候,尽量规范化,什么文件放在什么目录下都要有比较好的约定。
find这个命令如果要完全讲清楚,恐怕得花费很长的时间,而且很多用法我们几乎用不到,所以这里我就不一一介绍此命令的每一种用法了,我会详细介绍几种最常用的用法,大家只需要记住这几种就完全够我们日常使用了。
1、命令名称:find 
2、英文原意:
3、命令所在路径:/bin/find 
4、执行权限:所有用户
5、功能描述:进行各种花式文件搜索
6、语法:查找[搜索范围][匹配条件]
注意:Linux搜索和windows是有明显区别的,Linux严格区分文件大小写。

一、根据文件或目录名称搜索

find查找[搜索目录][-name或者-iname][搜索字符]:-name和-iname的区别一个区分大小写,一个不区分大小写
1、find/etc-name init(精准搜索,名字必须为init才能搜索的到)
2、find /etc -iname init(精准搜索,名字必须为init或者有字母大写也能搜索的到)
3、find /etc -name *init(模糊搜索,以init 结尾的文件或目录名)
4、find /etc -name init???(模糊搜索,?表示单个字符,即搜索到init___)

在这里插入图片描述

二、根据文件大小搜索

比如︰在根目录下查找大于100M的文件find / -size +204800
这里+n表示大于,-n表示小于,n表示等于
1数据块== 512字节 == 0.5KB,也就是1KB等于2数据块
100MB == 102400KB== 204800数据块
在这里插入图片描述

三、根据所有者和所属组搜索

1、在home目录下查询所属组为root的文件
find /home -group root
2、在home目录下查询所有者为root的文件
find /home -user root

在这里插入图片描述

四、根据时间属性搜索

find [路径] [选项] [时间]
选项有下面三种: -amin访问时间
-cmin文件属性被更改-mmin文件内容被修改
时间:+n,-n,n分别表示超过n分钟,n分钟以内和n分钟
范例:在letc目录下查找5分钟内被修改过属性的文件和目录	
find /etc -cmin -5

五、根据文件类型或i节点搜索

-type根据文件类型查找︰f表示文件,d表示目录,I表示软链接
范例:查找/home目录下文件类型是目录的find /home -type l-inum根据i节点查找
范例:查找/tmp目录下i节点为400342的文件或目录 find /tmp -inum 400342

在这里插入图片描述

六、组合条件搜索

这里有两个参数︰
1、-a表示两个条件同时满足(and)
2、-o表示两个条件满足任意一个即可(or)
范例:查找/etc目录下大于80MB同时小于10OMB的文件
find letc -size +163840 -a -size -204800

在文件资料库中查找文件命令:locate

1、命令名称:locate 
2、英文原意:
3、命令所在路径:/usr/bin/locate
4、执行权限:所有用户
5、功能描述︰在文件资料库中查找文件
6、语法:locate -i [文件名]
	-i不区分大小写

注意︰这里和find命令是有区别的,find是全盘检索,而locate是在文件资料库中进行搜索。所以locate命令的执行要比find命令执行速度快很多。但是这里有个问题,文件资料库是需要不断更新的。我们新创建的文件如果不更新文件资料库,使用locate是查找不到的。
updatedb手动更新资料库,但是对于/tmp目录下的新建文件,是更新不到文件资料库的,因为/tmp目录不属于文件资料库的收录范围。

在这里插入图片描述

搜索命令所在的目录及别名信息: which

1、命令名称: which
2、英文原意:
3、命令所在路径︰/usr/bin/which
4、执行权限:所有用户
5、功能描述︰搜索命令所在的目录及别名信息
6、语法: which [命令]
范例:查询ls 命令所在目录以及别名信息

在这里插入图片描述

搜索命令所在的目录及帮助文档路径:whereis

1、命令名称: whereis	
2、英文原意:
3、命令所在路径:/usr/bin/whereis
4、执行权限:所有用户
5、功能描述∶搜索命令所在的目录及帮助文档路径
6、语法:whereis [命令]
范例:查询ls命令所在目录以及帮助文档路径

在这里插入图片描述

在文件中搜寻字符串匹配的行并输出:grep

1、命令名称: grep
2、英文原意:
3、命令所在路径:/bin/grep 
4、执行权限:所有用户
5、功能描述:在文件中搜寻字符串匹配的行并输出
6、语法:grep -iv [指定字符串] [文件]
	-i不区分大小写
	-v排除指定字符串
范例:查找/root/install.log文件中包含 mysql字符串的行,并输出grep mysql /root/install.log

在这里插入图片描述

Linux常用命令之帮助和用户管理命令

帮助命令

一、获得命令或配置文件帮助信息:man

1、命令名称:man
2、英文原意:manual
3、命令所在路径:/usr/bin/man 
4、执行权限:所有用户
5、功能描述:获得帮助信息
6、语法:man[命令或配置文件]
范例1:查看ls命令的帮助信息:man ls

在这里插入图片描述

范例2:查看配置文件services 的帮助信息:man services。
注意查看配置文件不需要加上绝对路径,如果是man /etc/services,那么显示的就是services的文件内容。

在这里插入图片描述

如果以文件即是命令,又是配置文件,比如man passwd,系统是优先显示命令帮助信息的。如果你想看passwd的配置文件信息,可以 man 5 passwd。因为5表示配置文件信息,1表示命令帮助信息。

二、获得shell内置命令的帮助信息:help

1、命令名称: help
2、英文原意:
3、命令所在路径: shell内置命令
4、执行权限:所有用户
5、功能描述:获得shell内置命令帮助信息
6、语法: help [shell内置命令]
范例:查看umask命令的帮助信息:help umask
我们如何判断一个命令是否是shell内置命令呢?前面我们讲过which命令,是用来搜索命令所在的目录及别名信息,如果使用which找不到该命令的所在路径,那么此命令就是shell内置命令。

在这里插入图片描述
下面的命令都是shell内置命令:
在这里插入图片描述

三、获得命令的中文帮助信息:–help

这里给大家一个简单的技巧,如果我们想简单的查看命令的帮助信息,而不是上面显示的很多内容,那该怎么办呢?
我们执行此命令:命令--help
范例:查看ls 的帮助信息

在这里插入图片描述

用户管理命令

一、添加新用户: useradd

1、命令名称:useradd
2、英文原意:
3、命令所在路径︰/usr/sbin/useradd
4、执行权限:root
5、功能描述︰添加新用户
6、语法: useradd [用户名]
范例︰添加用户tom:useradd tom

在这里插入图片描述

二、设置用户密码:passwd

1、命令名称:passwd
2、英文原意:
3、命令所在路径:/usr/bin/passwd 
4、执行权限:root
5、功能描述:修改用户的密码
6、语法:passwd[用户名]
注意: root用户能修改任何用户的密码。而普通用户只能修改自己的密码,而且密码要符合密码规则,不然修改不了
范例:修改用户tom的密码

在这里插入图片描述

三、查看登录用户简单信息: who

1、命令名称: who
2、英文原意:
3、命令所在路径:/usr/bin/who 
4、执行权限:root
5、功能描述:查看登录用户简单信息
6、语法: who
范例:查看当前登录用户的信息

四、查看登录用户详细信息:w

1、命令名称:w
2、英文原意:
3、命令所在路径:/usr/bin/w
4、执行权限:root
5、功能描述︰查看登录用户详细信息
6、语法: w
范例:查看当前登录用户的详细信息

在这里插入图片描述

第一排13:46:28:当前系统的时间up 4 days: Linux连续运行时间4天 1 user:表示当前1个用户登录load average:0.00,0.01,0.05:系统的负载情况,分别表示过去一分钟,五分钟和十五分钟系统的负载情况。	
USER:登录用户名
TTY:登录终端,pts表示远程终端,tty表示本地终端
FROM:登录的主机IP,如果没有写

Linux常用命令之压缩和解压缩命令

压缩解压缩格式 .gz

一、将文件压缩为.gz格式,只能压缩文件:gzip

1、命令名称:gzip
2、英文原意:GNU zip
3、命令所在路径:/bin/gzip
4、执行权限:所有用户
5、功能描述:压缩文件,压缩后格式为.gz 
6、语法:gzip[需要压缩的文件]
7、压缩后文件格式:.gz
注意:只能压缩文件,不能压缩目录;压缩完后不保留原文件
范例︰我们在tmp目录下创建一个文件tmpgz,然后通过gzip tmpgz压缩该文件,压缩后的文件为tmpgz.gZ

在这里插入图片描述

二、将.gz文件解压:gunzip

1、命令名称:gunzip
2、英文原意:GNUUnzip 
3、命令所在路径:/bin/gunzip 
4、执行权限:所有用户
5、功能描述:将格式为.gz的压缩文件解压
6、语法:gunzip[压缩文件名]
注意:解压后不保留原文件
范例:我们将上面压缩后的文件tmpgz.gz解压:gunzip tmpgz.gz

在这里插入图片描述

压缩解压缩格式.tar.gz

一、将文件或目录压缩为.tar.gz格式:tar -zcf

1、命令名称: tar
2、英文原意:
3、命令所在路径:/bin/tar
4、执行权限:所有用户
5、功能描述:将文件压缩为.tar.gz格式
6、语法:tar 选项 [-zcf] [压缩后文件名] [目录]
	-c 打包
	-v 显示详细信息
	-f 指定文件名
	-z 打包同时压缩
7、压缩后文件格式:.tar.gz
范例︰在/tmp目录下创建a目录,然后在a目录下创建文件a.txt,通过tar -zcvf a.tar.gz a命令将a目录压缩为a.tar.az文件

在这里插入图片描述

与前面的gzip命令不同,通过tar压缩后是保留原文件或原目录的。

二、将.tar.gz文件解压:tar -zxf

1、命令名称: tar
2、英文原意:
3、命令所在路径:/bin/tar
4、执行权限:所有用户
5、功能描述:将格式为.tar.gz的压缩文件解压
6、语法:tar 选项 [-zxf] [.tar.gz的压缩文件名] [指定解压后的文件存放目录,默认当前目录]
-× 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
范例:将a.tar.gz文件解压:tar -zxf a.tar.gz

在这里插入图片描述

压缩解压缩格式.zip

一、将文件或目录压缩为.zip格式:zip

1、命令名称:zip
2、英文原意:
3、命令所在路径:/usr/bin/zp 
4、执行权限:所有用户
5、功能描述:将文件或目录压缩为.zip格式
6、语法:zip 选项 [-r] [压缩后文件名] [文件或目录]
	-r压缩目录
7、压缩后文件格式:.zip
范例:在/tmp目录下创建a目录,然后执行命令: zip -r a.zip a,将a目录压缩为a.zip 文件

在这里插入图片描述

解压之后也是保留原文件的

压缩解压缩格式.bz2

一、将文件压缩为.bz2格式,只能压缩文件:bzip2

1、命令名称: bzip2
2、英文原意:
3、命令所在路径:/usr/bin/bzip2
4、执行权限:所有用户
5、功能描述:将文件压缩为.bz2格式
6、语法:bzip2 选项 [-k] [文件]
	-k产生压缩文件后保留原文件
7、压缩后文件格式:.bz2
范例:在/tmp目录下创建a文件,然后执行命令: bzip2 -k a,将a文件压缩为a.bz2文件。

在这里插入图片描述

二、将.bz2文件解压:bunzip2

1、命令名称:bunzip 2
2、英文原意:
3、命令所在路径:/usr/bin/bunzip2
4、执行权限:所有用户
5、功能描述:将格式为.bz2的压缩文件解压
6、语法: bunzip2 选项 [-k] [压缩文件]
	-k解压缩文件后保留原文件	
范例:将a.bz2文件解压:bunzip2 a.bz2

在这里插入图片描述

不加参数k,解压之后不保留原文件

Linux常用命令之网络和关机重启命令

网络命令

一、给指定用户发送信息:write

1、命令名称: write
2、英文原意:
3、命令所在路径:/usr/bin/write 
4、执行权限:所有用户
5、功能描述:给指定用户发送信息,以Ctrl+D保存结束
6、语法:写[用户名]
范例:给vae用户发送信息: write vae

二、给所有用户发送广播信息:wall

1、命令名称: wall
2、英文原意:write all
3、命令所在路径:/usr/bin/wall 
4、执行权限:所有用户
5、功能描述︰发送广播信息
6、语法:wall [信息内容]
范例︰发送广播信息: wall hello linux!!!

三、测试网络连通性:ping

1、命令名称:ping
2、英文原意:
3、命令所在路径:/bin/ping
4、执行权限:所有用户
5、功能描述:测试网络连通性
6、语法:ping [-cn] [ip地址]
-c n是指定发送次数,如果不指定次数,那么将不断发送连接信息
范例:测试与百度的连接:ping www.baidu.com

在这里插入图片描述

四、查看和设置网卡信息:ifconfig

1、命令名称:ifconfig
2、英文原意:interface configure
3、命令所在路径:/sbin/ifconfig
4、执行权限:root
5、功能描述:查看和设置网卡信息
6、语法:ifconfig [网卡名称] [ip地址]
范例1:查看本机网卡信息:ifconfig]

在这里插入图片描述

范例2︰查看eth0的网卡信息︰ifconfig eth0

在这里插入图片描述

五、查看发送电子邮件: mail

1、命令名称: mail
2、英文原意:
3、命令所在路径:/bin/mail 
4、执行权限:所有用户
5、功能描述:查看发送电子邮件
6、语法:Mail [用户名]
范例:给root用户发送邮件: mail root

六、列出所有登录系统的用户信息:last

1、命令名称:last
2、英文原意:
3、命令所在路径:/usr/bin/last
4、执行权限:所有用户
5、功能描述:列出所有登录过系统的用户信息
6、语法:last
范例:查看所有登录系统的用户: last

在这里插入图片描述

七、显示数据包到主机间的路径:traceroute

1、命令名称:trraceroute
2、英文原意:
3、命令所在路径:/usr/bin/traceroute 
4、执行权限:所有用户
5、功能描述:显示数据包到主机间的路径
6、语法:Trraceroute [IP地址]

八、显示网络相关信息:netstat

1、命令名称:netstat
2、英文原意:
3、命令所在路径:/bin/netstat
4、执行权限:所有用户
5、功能描述:显示网络相关信息
6、语法:netstat[选项]	
	-t TCP协议
	-u UDP协议
	-l 监听
	-r 路由
	-n 显示IP地址和端口号
范例1: netstat -tlun查看本机监听的端口
范例2: netstat -an查看本机所有的网络连接
范例3: netstat -rn查看本机路由表

九、配置网络: setup

1、命令名称:setup 
2、英文原意:
3、命令所在路径:/usr/bin/setup 
4、执行权限:root
5、功能描述︰配置网络,比如IP地址,子网掩码等
6、语法:setup

在这里插入图片描述

十、挂载命令:mount

1、命令名称:mount
2、英文原意︰
3、命令所在路径:/bin/mount
4、执行权限:所有用户
5、功能描述:给光盘、U盘等外界存储设备分配类似于windows系统的盘符,便于访问
6、语法:文件系统]设备文件名挂载点[-t文件系统]设备文件名挂载点]
范例:在虚拟机光盘里面放入一张CD

在这里插入图片描述

将光盘挂载到/mnt/cdrom目录下: mount -t iso9960 /dev/sr0 /mnt/cdrom。-t iso9660可以省略

在这里插入图片描述

卸载:umount /dev/sro

关机重启命令

一、shutdown命令(推荐使用)

1、命令名称: shutdown
2、英文原意:
3、命令所在路径︰/sbin/shutdown
4、执行权限:root
5、功能描述:进行关机重启操作
6、语法: shutdown [选项] [时间]
-c取消前一个关机命令
-h关机
-r重启
范例1:马上关机: shutdown -h now
范例2:晚上八点半关机: shutdown -h 20:30
注意∶推荐使用该命令进行关机,此命令关机之前会正确的关闭系统的服务。

二、其他关机命令

1、halt
2、poweroff
3、init0

三、其他重启命令

1、reboot
2、init6

四、退出登录命令

1、logout

Linux 软件包管理之RPM命令

Linux软件包分类

一、源码包

源码包能直接看到源码,安装时需要人为手工设置安装位置,一般是/usrlocal/软件名/。源码包的升级版――脚本安装包,人为的改动源码使其有安装界面。
优点:
1、开源,如果有足够的能力,可以直接修改源代码。
2、安装时可以自由选择所需的功能。
3、软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高。
4、卸载方便,直接删了你安装软件的那个目录就好了。
缺点︰
1、安装步骤较多,尤其安装较大的软件集合时,容易出现拼写错误。
2、编译时间过长,比后面讲的二进制安装时间长。
3、因为是编译安装,安装过程中一旦报错新手很难解决。

二、二进制包

这里的二进制包最要包括centos中的rpm包。rpm包有默认安装位置。letc/配置文件安装目录;/usr/bin/可执行的命令安装目录;/usr/lib/程序所使用的函数库保存位置;/usr/share/doc/基本的软件使用手册保存位置;/usrlshare/man/帮助文件保存位置。
优点:
1、包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载。
2、安装速度比源码包快很多。
缺点:CentOS-6.8-x86_64-bin-DVD1.iso
1、已经经过编译了,看不到源代码。
2、功能选择不如源代码包灵活。
3、安装过程中有很多依赖的包,依赖性不好解决。

rpm包命名规则

我们打开前面安装Linux系统的安装文件CentOS-6.8-x86_64-bin-DVD1.iso。在package目录下都是rpm安装文件。

在这里插入图片描述

我们以 httpd-2.2.15-53.el6.centos.x86_64.rpm文件为例来看rpm包的命名规则。
1、httpd:软件包名
2、2.2.15:软件版本
3、15:软件发布的次数
4、el6.centos:适合的linux平台
5、x86_64:适合的硬件平台,这里表示64位。
6、rpm:rpm包的扩展名,注意linux是没有扩展名的概念,这里是告诉管理员这是一个rpm包文件。

rpm包安装

rpm -ivh 包名
选项 : 
	-i(install) 安装
	-v(verbose)  显示详细信息
	-h(hash) 显示进度
	--nodeps 	不检查依赖性

范例︰以安装httpd-2.2.15-53.el6.centos.x86_64.rpm为例:
我们进入到该rpm文件的挂载目录/mnt/cdrom/Packages,执行命令: rpm -ivh httpd-2.2.15-53.el6.centos.x86_64.rpm
这种安装方法可能需要先安装各种依赖,安装过程特别繁琐,后面讲解yum安装会简单的多。

rpm包升级

rpm -Uvh 包全名
选项:
	-U ( upgrade) 升级

rpm包卸载

rpm -e 包名
选项: 
	-e ( erase) 卸载
	--nodeps 不检查依赖性

查询rpm包是否安装

[root@localhost ~]# rpm -q 包名
#查询包是否安装
选项:
	-q 查询( query)
[root@localhost ~]# rpm -qa
#查询所有已经安装的RPM包
选项:
   -a 所有(all)

在这里插入图片描述

查询软件包的详细信息

[root@localhost ~]# rpm -qi 包名
选项:
	-i 查询软件信息( information)
	-p 查询未安装包信息( package)

在这里插入图片描述

查询软件包的安装位置

[root@localhost ~]# rpm -ql 包名
选项:
 -l 列表(list)
-p 查询未安装包信息(package)

在这里插入图片描述

查询系统文件属于哪个RPM包

[root@localhost ~]# rpm -qf 系统文件名
选项:
	-f 查询系统文件属于哪个软件包( file)

查询软件包的依赖性

[root@localhost ~]# rpm -qR 包名
选项:
-R查询软件包的依赖性( requires)
-p 查询未安装包信息( package)

Linux软件包管理之yum在线管理

常用的yum命令

一、查询所有可用软件包列表:yum list

[root@node3 / ]#yum list
此命令是在配好的yum源服务器上去查询所有可用的软件包

二、查询服务器上和关键字相关的软件包: yum search 关键字

在这里插入图片描述

三、yum安装软件包: yum -y install包名

选项: -y 表示自动回答yes (如果不加,每安装一个软件都会让你确认是否安装)
install 表示安装
范例︰这里以安装编译器gcc为例(后面演示安装源码包必须要用到此编译器)∶ yum -y installgcc	
没有报错,出现如下安装信息则说明安装成功:

在这里插入图片描述

或者在安装完成之后,输入rpm -q gcc 弹出如下界面表示安装成功︰

在这里插入图片描述

四、yum升级软件包:yum -y update包名

如果不指定包名,那么将会升级系统中所有的软件包,包括Linux内核。而Linux内核升级之后是需要在本地进行一些配置才能开机,如果是远程连接服务器进行Linux内核升级,那么是不可能启动服务器的。

五、yum卸载软件包:yum -y remove包名

卸载和升级也一样,而且由于软件包很多都有依赖性,你卸载A,而B和C都依赖于A,那么B和C都会卸载。假如C和Linux某个系统软件有依赖,而C也卸载掉了,可能造成某个系统功能不能使用。所以我们在卸载软件的时候一定要注意。

yum软件组管理

[root@localhost ~]# yum grouplist 
#列出所有可用的软件组列表
[root@localhost ~]# yum groupinstall 软件组名
#安装指定软件组,组名可以由grouplist查询出来
[root@localhost~]#yum groupremove 软件组名
#卸载指定软件组
安装某个软件组,会比我们一个一个安装某个软件包要方便的多。

在这里插入图片描述

这是在远程的桌面显示的是中文信息,如果直接进入服务器查询,显示的便是英文,我们需要什么直接安装即可。

Linux 用户和用户组管理之相关配置文件

用户信息文件:/etc/passwd

我们通过vim /etc/passwd命令,打开passwd 文件:

在这里插入图片描述

上面的每一行代表一个用户,我们以第一行为例:
  root:x:0:0 : root : / root : /bin/bash
上面的root用户通过︰分隔为7个字段。
1、第一个字段: root表示用户名称
2、第二个字段:x表示密码标志,真正的密码是存储在etc/shadow文件中。
3、第三个字段︰UID,用户ID。这里我们需要说明的是在Linux系统中不一定root用户是超级用户,用户id为0的才是超级用户。
	0︰表示超级用户,权限最大的用户。
	1-499:表示系统用户(伪用户),伪用户是系统用来启动相关服务和命令的,不能用来登录系统,而且不能删除,删除伪用户会造成一些命令不能使用。
	500-65535:普通用户.Linux内核2.6以后是可以支持232个用户,基本上是不用担心用户不够的.
4、第四个字段:GID,用户初始组ID。这里需要理解初始组和用户组的概念,初始组就是指用户一登录就立刻拥有这个用户组的相关权限,每个用户的初始组只能有一个,一般就是和这个用户的用户组相同的组名作为这个用户的初始组.附加组值用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个.
5、第五个字段:用户说明
6、第六个字段:家目录。
	普通用户:/home/用户名/
	超级用户:/root/
7、第七个字段︰登录之后的shell。这里简单来说shell就是Linux的命令解释器。

用户密码文件:letc/shadow

我们通过vim /etc/shadow命令,打开shadow文件:

在这里插入图片描述

同理上面的每一行和 passwd 文件一样,都是表示一个用户。passwd描述的是用户信息,shadow文件描述的是用户密码。我们还是以第一行为例:
root:$``6``$bo3LXGTQ8SwsRa6J$.7qTM2GT8EmA8YSkHtIqlVefcUyOTdv3EBwJLA32UOqL/YHIOe0SQiacsNq4tSAN2zVbp0bvl0FP. sKOeuPIg/: ``17324``:`0~`: 99999``:`7~`:::
上面的root用户通过︰分隔为9个字段。
1、第一个字段:根表示用户名
2、第二个字段:root用户的登录加密密码。
	一、加密算法升级为SHA512散列加密算法
	二、如果密码位是“!!"或者"*”代表没有密码,不能登录,基本上伪用户都是没有密码的
3、第三个字段:密码的最后一次修改日期。使用1970年1月1日作为标准时间,每过一天时间戳加1.
root 用户的修改日期是17324。这里我们通过date -d "1970-01-0117324 days"进行换算:

在这里插入图片描述

4、第四个字段:两次密码的修改间隔时间(和第三字段相比)
5、第五个字段:密码有效期(和第三字段相比)
6、第六个字段:密码修改到期前的警告天数(和第五个字段进行比较)
7、第七个字段:密码过期后的宽限天数(和第五个字段进行比较)
	0∶代表密码过期后立即失效
	-1∶代表密码永远不会失效
8、第八个字段:账号失效时间(要用时间戳表示)
9、第九个字段:保留字段

用户组信息文件:/etc/group

我们通过vim letc/group命令,打开group文件:

在这里插入图片描述

一般创建一个用户,立即创建一个和用户名相同的用户组,我们还是以第一行root 为例:
root:x:0:
1、第一个字段:组名
2、第二个字段:组密码标志,密码文件存放在/etc/gshadow中
3、第三个字段:GID,组id
4、第四个字段:组中的附加用户

用户组密码文件:/etclgshadow

在这里插入图片描述

这个文件基本上不会用到
1.、第一个字段:组名
2、第二个字段︰组密码
3、第三个字段:组管理员用户名
4、第四个字段:组中的附加用户

用户的家目录

1、普通用户:/home/用户名/,一般创建一个新用户就会自动创建该家目录。所有者和所属组都是此用户,权限是700.
2、超级用户:/root/,所有者和所属组都是root用户,权限是550。注意看上去权限是550,其实权限对于超级用户基本上是没有限制的,所以这里给什么权限都没多大区别.

用户的邮箱

目录是:
/var/spool/mail/用户名/

用户的模板目录

目录是:
 /etc/skel

这个目录是每创建一个新用户,就会在其家目录下自动创建/etc/skel目录下的所有文件。
范例:我们在/etc/skel目录下创建一个hello文件,然后创建一个新用户test,进入到 test用户的家目录/home/test 就会看到有hello 文件。

在这里插入图片描述

Linux 用户和用户组管理之用户管理命令

添加用户命令:useradd

1、命令名称: useradd
2、英文原意:
3、命令所在路径:/usr/sbin/useradd
4、执行权限:root
5、功能描述:添加新用户
6、语法: useradd [选项] [用户名]
	-u UID:手工指定用户的uid
	-d 家目录:手工指定用户的家目录
	-c 用户说明:手工指定用户说明
	-g 组名:手工指定用户的初始组
	-s shell:手工指定用户的登录shell,默认是/bin/bash

注意∶添加选项的uid,家目录等等前面的配置文件我们都已经讲解了,实际上创建新用户是不用添加任何选项的,默认就好。
范例︰添加用户tom:useradd tom。

在这里插入图片描述

创建一个新用户之后,会在下面文件中自动生成内容:
/etc/passwd:生成用户信息
/etc/shadow:生成密码信息
/etc/group:生成用户组信息
/etc/gshadow:生成用户组密码信息
/home/tom:创建家目录
/var/spool/mail/tom:创建用户邮箱目录

在这里插入图片描述

上面出现了很多默认值,用户默认值文件如下:
/etc/default/useraddGROUP=100 #用户默认组
HOME=/home #用户家目录
INACTIVE=-1 #密码过期宽限天数(7)
EXPIRE= #密码失效时间(8)
SHELL=/bin/bash #默认shell
SKEL=/etc/skel #模板目录
CREATE_MAIL_SPOOL=yes #是否建立邮箱

/etc/login.defs
PASS_MAX_DAYS 99999 #密码有效期(5)
PASS_MIN_DAYS 0 #密码修改间隔(4)
PASS_MIN_LEN 5 #密码最小5位(PAM)
PASS_WARN_AGE7 #密码到期警告(6)
UID_MIN 500 #最小和最大UID范围
GID_MAX 60000
ENCRYPT_METHOD SHA512 #加密模式

修改用户密码:passwd

1、命令名称:passwd
2、英文原意:
3、命令所在路径:/usr/bin/passwd 
4、执行权限:root
5、功能描述:修改用户的密码
6、语法:passwd [选项] [用户名]
	-S 查询用户密码的密码状态,仅root用户可用
	-I 暂时锁定用户。仅root用户可用
	-u 解锁用户。仅root用户可用
	-stdin 可以通过管道符输出的数据作为用户的密码
注意:root用户能修改任何用户的密码,语法为 passwd用户名。而普通用户只能修改自己的密码,语法为 passwd,后面不能加普通用户名,而且密码要符合密码规则,不然修改不了。

在这里插入图片描述

修改用户信息:usermod

[root@localhost ~]#usermod [选项] 用户名
选项:
	-uUID:	 修改用户的UID号
	-c用户说明:	 修改用户的说明信息
	-G组名: 	修改用户的附加组
	-L: 	临时锁定用户 (Lock)
	-U:	解锁用户锁定(Unlock)

修改用户密码状态:chage

[root@localhost ~]#chage[选项]用户名
选项:
	-l:	 	列出用户的详细密码状态	
	-d日期:		修改密码最后一次更改日期(shadow3字段)
	-m天数:	两次密码修改间隔(4字段)
	-M天数:	密码有效期(5字段)
	-W天数:	密码过期前警告天数(6字段)
	-Ⅰ天数:	密码过后宽限天数(7字段)
	-E日期:	账号失效时间(8字段)

删除用户命令:userdel

语法:userdel	[-r]	用户名
	-r删除用户的同时删除用户家目录
执行上面的命令,会自动删除下面的文件:
	1、删除/etc/passwd文件的用户信息
	2、删除/etc/影子文件的用户密码信息
	3、删除/etc/group文件的用户组信息
	4、删除/etc/gshadow 文件的用户组密码信息
	5、删除用户的邮件信息rm-rf/var/spool/mail/用户名
	6、删除用户的家目录rm-rf/home/用户名
注意∶基本上完整的删除一个用户都是要加上-r选项的。如何判断是否完整的删除一个用户,只需要从新添加该用户一次,如果报如下错误则没有删除干净︰

在这里插入图片描述

查看用户id

在这里插入图片描述

切换用户身份su

[root(@localhost ~]# su	[选项]	用户名
选项;
	-:	选项只使用“-”代表连带用户的环境变量一起切换
	-c命令:	仅执行一次命令,而不切换用户身份
注意:选项 -千万不能省略,必须要连带用户的环境变量一起切换。从普通用户切换到root 用户是需要输入密码的,而从root用户切换到普通用户是不需要输入密码的。

在这里插入图片描述

添加用户组:groupadd

语法:groupadd	[选项]	组名
	-g GID指定组id

修改用户组:groupmod

语法:groupmod	[选项]	组名
	-g GID修改组id
	-n新组名修改组名
范例:把组名group1 修改为group2
	groupmod -n group2 group1

删除用户组:groupdel

语法:groupdel组名

Linux的系统管理

1、进程管理

进程简单来说就是系统中正在执行的一个程序或命令,每个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。	
通过管理进程,我们做的主要工作是:
1、判断服务器健康状态。
2、查看系统中的所有进程。
3、杀死进程。

2、查看系统中的所有进程:ps aux

[root@localhost ~]# ps aux
#查看系统中所有进程,使用BSD操作系统格式
[root@localhost ~]# ps -le
#查看系统中所有进程,使用Linux标准命令格式。

在这里插入图片描述

每—列解释如下:
USER:该进程是由哪个用户产生的;
PID:进程的ID号;
%CPU:该进程占用cPU资源的百分比,占用越高,进程越耗费资源;
%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
VSZ:该进程占用虚拟内存的大小,单位KB;
RSS:该进程占用实际物理内存的大小,单位KB;
TTY:该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。
STAT:进程状态。常见的状态有:R:运行、S:睡眠、T:停止状态、s:包含子进程、+:位于后台
START:该进程的启动时间
TIME:该进程占用CPU的运算时间,注意不是系统时间
COMMAND:产生此进程的命令名

3、查看系统健康状态:top

[root@localhost~]# top	[选项]	
选项:
-d秒数:		指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:
?或h:	显示交互模式的帮助
P:		以CPU使用率排序,默认就是此项
M:	以内存的使用率排序
N:	以PID排序
q:		退出top

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

4、查看进程数:pstree

[root@localhost ~]# pstree[选项]
选项:
	-p:	显示进程的PID
	-u:	显示进程的所属用户

在这里插入图片描述

5、终止进程:kill

1、查看可用的进程信号:kill -l

在这里插入图片描述
在这里插入图片描述

2、根据进程pid杀死进程

kill -15进程号默认正常结束进程,其中选项-15可以省略。
[root@localhost~]# kill -1 22354
#重启进程
[root@localhost ~]# kill -9 22368
#强制杀死进程

3、根据进程名杀死进程

[root@localhost~]# killall[选项][信号]进程名
#按照进程名杀死进程
选项;
-i:		交互式,询问是否要杀死某个进程
-I:		忽略进程名的大小写
[root@localhost~]#pkill	[选项]	[信号]进程名
#按照进程名终止进程
选项:
	-t 	终端号:按照终端号踢出用户
[root@localhost~]# w
#使用w命令查询本机已经登录的用户
[root@localhost ~]# pkill -t -9 pts/1
#强制杀死从pts/1虚拟终端登录的进程

6、将进程放入后台运行

1、在命令后加&,使得命令在后台运行
tar -zcf etc.tar.gz /etc &
2、快捷键Ctrl+z ,使得命令在后台暂停
[root@localhost ~]#top
#在top命令执行的过程中,按下ctrl+z快捷键

7、查看后台的工作

[root@localhost~]# jobs [-1]
选项:
	-l:	 显示工作的PID
注:“+”号代表最近一个放入后台的工作,也是工作恢复时,默认恢复的工作。“”号代表倒数第二个放入后台的工作

8、将后台暂停的工作号恢复到前台执行

[root@localhost~]# fg %工作号
参数:
	%工作号: %号可以省略,但是注意工作号和PID的区别

9、后台暂停的工作号恢复到后台执行

[root@localhost ~]# bg %工作号
注:后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行

10、监控系统资源:vmstat

[root@localhost~]# vmstat	[刷新延时 刷新次数]
例如:
[root@localhost proc]# vmstat 1 3

在这里插入图片描述

11、查看硬件信息 dmesg

[root@localhost ~]# dmesg
[root@localhost ~]# dmesg | grep CPU

在这里插入图片描述

还有个命令也可以查看CPU信息∶
cat /proc/ cpuinfo

12、查看系统与内核相关信息uname

[root@localhost ~-]# uname[选项]
选项:
	-a: 	查看系统所有相关信息;
	-r: 	查看内核版本;
	-s: 	查看内核名称。

13、查看当前系统位数file

通过file命令查看任意一个外部命令的信息,比如file /bin/ls

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值