Advanced_commands
[TOC]
hostnme/id
hostname
语法1:#hostname 含义:表示输出完整的主机名
语法2:#hostname -f 含义:表示输出当前主机名中的FQDN(全限定域名)
作用:查看一个用户的一些基本信息(包含用户id,用户组id,附加组id…),该指令如果不指定用户则默认当前用户。
语法1:#id 默认显示当前执行该命令的用户的基本信息
语法2:#id 用户名 显示指定用户的基本信息
[root@localhost ~]# hostname
if
[root@localhost ~]# id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@localhost ~]# id admin
uid=1000(admin) gid=1000(admin) 组=1000(admin),10(wheel)
#验证上述信息是否正确?
#验证用户信息:通过文件/etc/passwd
#验证用户组信息:通过文件/etc/group
[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
admin:x:1000:1000:admin:/home/admin:/bin/bash
dockerroot:x:997:994:Docker User:/var/lib/docker:/sbin/nologin
.....
[root@localhost ~]#
whoami我是谁
作用:“我是谁?”显示当前登录的用户名,一般用于shel脚本,用于获取当前操作的用户名方便记录日志。
[root@localhost ~]# whoami
root
ps 进程信息
作用:主要是查看服务器的进程信息
选项含义:
-e:等价于“-A”,表示列出全部的进程
-f:显示全部的列(显示全字段)
[root@localhost ~]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 23:20 ? 00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root 2 0 0 23:20 ? 00:00:00 [kthreadd]
root 3 2 0 23:20 ? 00:00:00 [ksoftirqd/0]
root 5 2 0 23:20 ? 00:00:00 [kworker/0:0H]
root 6 2 0 23:20 ? 00:00:00

列的含义:
UID:该进程执行的用户id;
PID:进程id;
PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程称之为僵尸进程(parent process ID);
C:Cpu的占用率,其形式是百分数;
STIME:进行的启动时间;
TTY:终端设备,发起该进程的设备识别符号,如果显示“?”则表示该进程并不是由终端设备发起;
TIME:进程的执行时间;
CMD:该进程的名称或者对应的路径;
案例:(100%使用的命令)在ps的结果中过滤出想要查看的进程状态
#ps -ef|grep “进程名称""

top 进程占用资源
作用:查看服务器的进程占的资源(100%使用)
语法: 进入命令:#top (动态显示)
退出命令:按下q键
直接输入后回车动态显示进程的变化

表头含义:
PID:进程id;USER:该进程对应的用户;PR:优先级;
VIRT:虚拟内存;RES:常驻内存;SHR:共享内存;
计算一个进程实际使用的内存 = 常驻内存(RES)- 共享内存(SHR)
S:表示进程的状态status(sleeping,其中S表示睡眠,R表示运行);
%CPU:表示CPU的占用百分比;
%MEM:表示内存的占用百分比;
TIME+:执行的时间;
COMMAND:进程的名称或者路径
在运行top的时候,可以按下方便的快捷键:
M:表示将结果按照内存(MEM)从高到低进行降序排列;
P:表示将结果按照CPU****使用率从高到低进行降序排列;
1:当服务器拥有多个cpu的时候可以使用“1”快捷键来切换是否展示显示各个cpu的详细信息;
du 查看目录的真实大小
作用:查看目录的真实大小
语法:#du -sh 目录路径
选项含义:
-s:summaries,只显示汇总的大小
-h:表示以高可读性的形式进行显示
root@localhost /]# mkdir /data1
[root@localhost /]# ls > /data1/ls.txt
[root@localhost /]# ls >> /data1/ls.txt
[root@localhost /]# ls >> /data1/ls.txt
[root@localhost /]# du -sh /data1
4.0K /data1
[root@localhost /]# du -s /data1
4 /data1
[root@localhost /]# du -h /data1
4.0K /data1
[root@localhost /]# du -sh /etc/
35M /etc/
[root@localhost /]#
find 查找文件
作用:用于查找文件(其参数有55个之多)
语法:#find 路径范围 选项 选项的值
选项:
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索
**文档类型:“-***”表示文件
(在使用find的时候需要用f来替换),**“d”表示文件夹
[root@localhost /]# find /data1
/data1
/data1/ls.txt
[root@localhost /]# find /data1 -name ls.txt
/data1/ls.txt
[root@localhost /]# find /data1 -type f
/data1/ls.txt
[root@localhost /]# find /data1 -type d
/data1
[root@localhost /]#
service服务启动停止
作用:用于控制一些软件的服务启动/停止/重启
语法:#service 服务名 start/stop/restart
例如:启动本机安装的Apache(网站服务器软件),其服务名httpd
#service httpd start

通过ps命令来检查httpd服务是否启动:

kill杀死进程
作用:表示杀死进程 (当遇到僵尸进程或者出于某些原因需要关闭进程的时候)
语法:#kill 进程PID (语法需要配合ps一起使用)
与kill命令作用相似但是比kill更加好用的杀死进程的命令:killall
语法:**#killall 进程名称 **
ifconfing网卡信息
作用:用于操作网卡相关的指令。
简单语法:#ifconfig (获取网卡信息)
ifconfig失效的话:
yum install net-tools 中间需要确定下载(下载前确保ping外网)


enp0s3表示Linux中的一个网卡,enp0s3是其名称。
Lo(loop**,本地回还网卡,其ip地址一般都是127.0.0.1**)也是一个网卡名称。
注意:inet addr就是网卡的ip地址
uptime输出持续在线时间
作用:输出计算机的持续在线时间(计算机从开机到现在运行的时间)
[root@localhost /]# uptime
23:58:50 up 38 min, 2 users, load average: 0.00, 0.01, 0.05
uanme获取操作系统相关信息
语法1:#uname 获取操作系统的类型
语法2**:#uname -a all,表示获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)**
netstat -tnlp指令
作用:查看网络连接状态
语法:#netstat -tnlp

选项说明:
-t:表示只列出tcp协议的连接;
-n:表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示;
-l:表示过滤出“state(状态)”列中其值为LISTEN(监听)的连接;
-p:表示显示发起连接的进程pid和进程名称;
man手册
作用:manual,手册(包含了Linux中全部命令手册,英文)
语法:#man 命令 (退出按下q键)


shutdown
作用:关机 (慎用)
语法1:#shutdown -h now “关机提示”
或者 #shutdown -h 15:25 “关机提示”
[root@localhost /]# shutdown -h 00:20
Shutdown scheduled for 一 2020-05-11 00:20:00 CST, use 'shutdown -c' to cancel.
如果想要取消关机计划的话,则可以按照以下方式去尝试:
**①针对于centos7.x****之前的版本:ctrl+c
②针对于centos7.x**(包含)之后的版本:#shutdown -c
[root@localhost /]# shutdown -c
Broadcast message from root@if (Mon 2020-05-11 00:04:06 CST):
The system shutdown has been cancelled at Mon 2020-05-11 00:05:06 CST!
reboot重启
作用:重新启动计算机
语法1:#reboot 重启
语法2:#reboot -w 模拟重启,但是不重启(只写关机与开机的日志信息)
Vim Editor
Vi编辑器是所有Unix及Linux系统下标准的编辑器,类似于windows系统下的notepad(记事本)编辑器,由于在Unix及Linux系统的任何版本,Vi编辑器是完全相同的,因此可以在其他任何介绍vi的地方都能进一步了解它,Vi也是Linux中最基本的文本编辑器,学会它后,我们将在Linux的世界里畅行无阻,尤其是在终端中。
关于vim:
vi和vim都是Linux中的编辑器,不同的是,vim比较高级,可以视为vi的升级版本。
vi使用于文本编辑,但是vim更适用于coding(写代码的)。
Vim重点是光标的移动,模式切换,删除,查找,替换,复制,粘贴,撤销命令的使用**。
vim三种模式(重点)
Vim中存在三种模式(大众的认知):命令模式、编辑模式(输入模式)、末行模式(尾行模式)。
命令模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作
(删除行,复制行,移动光标,粘贴等等)【打开文件之后默认进入的模式】;
编辑模式:在该模式下可以对文件的内容进行编辑;
末行模式:可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等);
Vim的打开文件的方式(4种,要求掌握的就前三种):
#vim 文件路径 作用:打开指定的文件
#vim +数字 文件的路径 作用:打开指定的文件,并且将光标移动到指定行
#vim +/关键词 文件的路径 作用:打开指定的文件,并且高亮显示关键词
#vim 文件路径1 文件路径2 文件路径3 作用:同时打开多个文件
退出方式:输入:q
按下回车即可

Last updated