作用:操作服务器的主机名(读取,设置)
语法1:#hostname 含义:表示输出完整的主机名
语法2: #hosename –f 含义:表示输出当前朱继民中的FQDN(全限定域名)
EG1:查看主机名
作用:查看一个用户的一些基本信息(包含用户id,附加组id…,该指令如果不指定用户则默认是当前用户)
语法1:#id 默认显示当前执行该命令的用户的基本信息
语法2: #id 用户名
EG1:
组:附加组信息
EG2:
验证上述信息是否正确
验证用户信息,通过文件/etc/passwd
验证用户信息,通过文件/etc/group
作用:“我是谁” 显示当前登录的用户名,一般用于shell脚本,用于获取当前操作的用户名,方便记录日志
语法:#whoami
指令:ps
作用:主要是查看服务器进程信息
选项含义:
-e: 等价于”-A”,表示列出全部的进程
-f: 显示全部的列
PID:process id 表示进程id
PPID:parent process id 表示该进程父级id(不会自己启动,由别的进程调用才会启动),如果一个程序的父级进程找不到,该程序的进程就被称之为僵尸进程
C:cpu占有率 ,其形式是百分比
STIME:该进程的启动时间
TTP:终端设备,发起该进程的设备识别符号,如果显示”?”则表示该进程并不是由终端进程发起
TIME:进程的执行时间
CMD:该进程的名称或者对应的路径
EG1:一定会使用的命令,在ps的结果中过滤出想要查看的进程状态
#ps –ef | grep 进程名称
Pts/4表示你在这个终端中查看firefox(火狐)进程,不是系统运行的程序
作用:查看服务器的进程占的资源
语法:
进入命令:#top (动态显示)
退出命令:按下q键
Up:表示系统启动了多长时间
User:前的数字表示几个用户登录
Load average :表示在某个时间点范围内的负载情况,后面的数字为一分钟内,五分钟内,十五分钟内的负载情况
Total:总进程个数
Running:正在运行的进程
Sleeping:睡眠的进程
Stopped:停止的进程
Zombie:表示僵尸进程
表头含义:
PID:进程id
USER:该进程对应的用户
PR:优先级
NI:用户进程空间内改变过优先级的进程占用的百分比
VIRT:虚拟内存,
假设一个程序运行时候申请了500M 的内存,实际使用了320M,此时的虚拟内存就是500M
RES:常驻内存
假设一个程序运行时候申请了500M 的内存,实际使用了320M,此时的实际内存就是320M
SHR:share 共享内存
假设一个程序运行时候申请了500M 的内存,实际使用了320M,但是如果其中包含了对其它进程的条用开销则需要扣除。
计算一个进程实际使用的内存 = 常驻内存(RES) - 共享内存(SHR)
S:表示进行的状态(sleeping),其中S表示睡眠,R表示运行
%CPU:表示CPU的占用百分比
%MEM:表示内存的占用百分比
TIME+:执行时间
COMMAND:进程的名称或者路径
在运行top的时候按下方便的快捷键
M:表示将据诶过按照内存(MEM)从高到低进行降序排序
P:表示将结果按CPU使用率从高到低进行排序
1:当服务器拥有多个CPU的时候可以使用“1”快捷键是否展示展示各个cpu的使用情况
作用:查看目录的真实大小
语法:#du –sh 目录路径
选项:
s: summaries 只显示汇总的大小
h:表示以较高可读性的形式进行显示
EG1:
EG2:统计 /etc的大小
作用:用于查找文件(选项有55个多)
语法:#find 搜索范围 选项 选项的值
选项:
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索
文档类型:“-”:文件(在使用find的时候需要用f进行替换)“d” :文件夹
注意:find搜索包括隐藏文件
EG1:使用find在home路径下搜索test.txt文件
EG2:搜索etc目录下所有的conf文件
EG3:接EG2, 搜索etc目录下所有的conf文件的个数
EG4:使用find搜索etc/sane.d/目录下的所有的文件夹
EG5:使用find搜索etc/sane.d/目录下的所有的文件
作用:用于控制一些软件的服务,启动/停止/重启
语法:#service 服务名 start/stop/restart
作用:表示杀死进程 (当遇到僵尸进程或者处于某种原因需要关闭进程的时候)
语法:#kill 进程PID (语法需要配合ps一起使用)
补充:与kill命令作用相似但是比kill更加还用的杀死进程的命令,killall
语法:#killall 进程名称
作用:用于操作网卡的相关指令 (获取网卡相关信息)
语法:#ifconfig
Enp0s3表示linux的一个网卡,Enp0s3是其名称(loop,本地网的网卡,其ip地址一般都是127.0.0.1)也是一个网卡名称
注意:inet addr 就是网卡的ip地址
补充:
用了很多年Linux的我在升级Ubuntu 16.04之后竟然发现我的以太网卡的名字竟然不是eth0,变成了enp3s0,每次想要修改什么配置,
都要先ifconfig查一下网卡名,真是让我很郁闷!
去网上搜索一下才知道,这次的Ubuntu 16的更新幅度很大,当属systemd替换掉了initd来引导系统这个动作给用户带来的影响最大,
原来习惯service什么的来控制系统服务什么的,现在竟然被systemctl这个命令替换了(虽然service依旧可用)。systemd带来的另
外一个副作用(或者可以说是优点)就是网络接口的命名方式变了:
上面一段是systemd源码的注释,意思是:
作用:重新启动计算机
语法1:#reboot 重启
语法2:#reboot –w 模拟重启,但是不重启(只写关机与开机的日志信息)
注意:每次开机和关机系统都会对写一些日志信息
作用:关机 (慎用)
语法1:#shutdown –h now “关机提示”或者 #shutdown –h 21:25
除了shutdown外,还有几个以下关机命令:
#init(0)
#halt
#poweroff
作用:输出计算机持续在线时间(计算机从开机以来到现在运行的时间)
语法:#uptime
3:33 :持续时间 , 3小时,33分钟
1 user: 同时连接数(连接虚拟机)
Load average : 负载 最近一分钟 五分钟 十五分钟的负载
作用:获取计算机操作系统相关信息
语法1:#uname 用于获取操作系统的类型
语法2:#unam –a all,表示获取全部的系统信息(类型,全部主机名,内核版本,发布时间,开源计划)
作用:查看网络的连接状态
语法:#netstat -tnlp
-t: 表示只列出tcp协议的连接
-n: 表示以可读性较好的方式列出 (将地址从字母组合转化成ip地址,将协议转化成端口号来显示)
-l: 只显示“state”(状态)列中其值为LISTEN(监听)的连接
-p: 表示显示发起连接的进程PID和进程名称
作用:manual ,手册(包含类linux中全部命令的手册,英文)
语法:#man 命令 (退出按q)
EG1:通过man查询cp指令的用法
man cp
补充:
1.如何在命令行中快速删除光标前/后的内容?
删除光标前:ctrl + u
删除光标后:ctrl + k
2.如何删除temp下所有A开头的文件?
#rm –f /temp/A*
注意:不加-r
3.如何把/etc/passwd备份到/tmp目录下?
#cp /etc/passwd /tmp
4.如何查看系统中最后创建的三个用户?
#tail -3 /etc/passwd
5.什么命令可以统计当先系统中有多少个账户
#wc -l /etc/passwd
#cat /etc/passwd | wc -l
6.如何创建/tmp/test.conf文件?
#touch /tmp/test.conf
7.如何通过vim编辑打开/tmp/test.cont?
#vim /tmp/test.conf
8.如何查看/etc/passwd的前三行和尾三行
#head -3 /etc/passwd
#tail -3 /etc/passwd
9.如何一次性的创建目录/test/1/2/3/4
#mkdir –p /test/1/2/3/4
10.如何最快的返回家目录
#cd ~
#cd
11.如何查看/etc下所占的磁盘空间
#du –sh /etc
12.如何删除/tmp下所有的文件
#rm -rf /tmp/*
13.尝试启动Apache,并且检查是否启动成功
#service httpd start
#ps –ef | grep httpd
14.杀死Apache进程
#killall httpd