查看当前位置
[root@mb ~]# pwd
/root
[root@mb ~]# cd /etc/
[root@mb etc]#
常用命令选项
– -l:以长格式显示,显示详细信息
– -d:显示目录本身(而不是内容)的属性
– -h:提供易读的容量单位(K、M等)
– -A:显示所有内容包含隐藏数据
– -R:递归显示内容
[root@mb ~]# ls -ld /etc
drwxr-xr-x. 75 root root 8192 Dec 3 14:01 /etc
查看文本内容
[root@mb ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@mb ~]# cat -n /etc/redhat-release
1 CentOS Linux release 7.5.1804 (Core)
新建文档
mkdir — Make Directory
格式:mkdir [-p] [/路径/]目录名…
[-p]:建立父目录
[root@mb ~]# mkdir /wxr
[root@mb ~]# ll -d /wxr/
drwxr-xr-x 2 root root 6 Dec 10 11:39 /wxr/
[root@mb ~]# mkdir -p /A/a
– 格式:rm [选项]… 文件或目录…
• 常用命令选项
– -r、-f:递归删除(含目录)、强制删除
[root@mb ~]# rm -rf /wxr
[root@mb ~]# ls /wxr
ls: cannot access /wxr: No such file or directory
移动或者改名字
mv [选项]… 原文件… 目标路径
[root@mb ~]# echo 111 > /root/1.txt
[root@mb ~]# mv /root/1.txt /etc/passwd /opt/
[root@mb ~]# ls /opt/
1.txt passwd
• 在移动时候,可支持多个参数,永远会把最后一个参数作为目标,其他所有参数都作为源
– 格式:cp [选项]… 原文件… 目标路径
• 常用命令选项
– -r:递归,复制目录时必须有此选项
[root@mb ~]# cp -r /home/ /opt/ //复制目录
[root@mb ~]# ls /opt/
1.txt home passwd
• 在复制时候,可支持多个参数,永远会把最后一个参数作为目标,其他所有参数都作为源
[root@mb ~]# cp /etc/fstab /etc/hosts /opt/
[root@mb ~]# ls /opt
1.txt fstab home hosts passwd
别名
• 查看已设置的别名
– alias [别名名称]
• 定义新的别名
– alias 别名名称= ‘实际执行的命令行’
• 取消已设置的别名
– unalias [别名名称]
[root@mb ~]# alias
[root@mb ~]# alias hn='hostname'
[root@mb ~]# hn
mb
[root@mb ~]# alias hn
alias hn='hostname'
[root@mb ~]# unalias hn
[root@mb ~]# hn
-bash: hn: command not found
[root@mb ~]# touch 1.txt
[root@mb ~]# vim 2.txt //vim编辑器
[root@mb ~]# echo 123 > 3.txt //重定向
[root@mb ~]# ls
1.txt 2.txt 3.txt anaconda-ks.cfg
head用于显示文件的前10行,后面直接跟文件名
tail显示文件的后10行,后面直接跟文件名
可以直接设置想看几行
[root@mb ~]# head -1 /root/3.txt
123
[root@mb ~]# tail -1 /etc/fstab
/dev/cdrom /dvd iso9660 defaults 0 0
查看一个不断更新的文件
[root@mb ~]# tail -f /var/log/messages
管道( | ):将前面命令的输出,交由后面命令,作为后面命令的参数
[root@mb ~]# cat /etc/fstab | tail -1
/dev/cdrom /dvd iso9660 defaults 0 0
重定向
[root@mb ~]# echo 覆盖重定向 > /root/1.txt
[root@mb ~]# cat /root/1.txt
覆盖重定向
[root@mb ~]# echo 被覆盖了 > /root/1.txt
[root@mb ~]# cat /root/1.txt
被覆盖了
[root@mb ~]# echo 追加重定向 >> /root/1.txt
[root@mb ~]# cat /root/1.txt
被覆盖了
追加重定向
• tar 集成备份工具
– -c:创建归档
– -x:释放归档
– -f:指定归档文件名称,必须放在所有选项的最后
– -z、-j、-J:调用 .gz、.bz2、.xz 格式的工具进行处理
– -t:显示归档中的文件清单
– -C:指定释放路径
将目录/opt/bjca3打包备份排除/opt/bjca3/logs目录,传递到远
使用–exclude选项在打包时可用排除特定的目录,但是要注意,使用tar 的–exclude 排除打包的时候,不能加“/”,否则还是会把logs目录以及其下的文件打包进去。
tar -czvf bjca3.tar.gz --exclude=/opt/bjca3/logs /opt/bjca3
grep命令是一种强大的文本搜索工具
-v:取反过滤
^字符串:以字符串开头
字符串$:以字符串开头结尾
[root@mb ~]# grep iso /etc/fstab
/dev/cdrom /dvd iso9660 defaults 0 0
cat /etc/default/useradd
grep ^$ /etc/default/useradd
grep -v ^$ /etc/default/useradd #不要空行
在Linux系统中,大多数配置文件以#开头的行,为注释行
grep -v ^# /etc/default/useradd | grep -v ^$
显示有效配置(去除空行与注释行)
递归式查找
• 根据预设的条件递归查找对应的文件
– find [目录] [条件1]
– 常用条件表示:
-type 类型(f、d、l)
-name “文档名称”
-size +|-文件大小(k、M、G)
-user 用户名
-mtime 修改时间
find命令的高级使用
处理查找的内容
• 操作方法:
– find [范围] [条件] -exec 处理命令 {} ;
– 根据条件查找并处理结果
– -exec :额外操作开始
– {} :find查询的结果
– ; :额外操作结束
– 每找到一个符合条件的数据,直接传输给-exec,每次只传输一个参数
ln [参数][源文件或目录][目标文件或目录]
软链接:
1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
2.软链接可以 跨文件系统 ,硬链接不可以
3.软链接可以对一个不存在的文件名进行链接
4.软链接可以对目录进行链接
硬链接:
1.硬链接,以文件副本的形式存在。但不占用实际空间。
2.不允许给目录创建硬链接
3.硬链接只有在同一个文件系统中才能创建
显示系统信息
-a或–all 显示全部的信息。
-m或–machine 显示电脑类型。
-n或-nodename 显示在网络上的主机名称。
-r或–release 显示操作系统的发行编号。
-s或–sysname 显示操作系统名称。
-v 显示操作系统的版本。
–help 显示帮助。
–version 显示版本信息。
[root@mb ~]# uname -a
Linux mb 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
查看cpu信息
[root@mb ~]# lscpu
[root@mb ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer
[root@mb ~]# free
total used free shared buff/cache available
Mem: 997956 102396 676724 7836 218836 696604
Swap: 2097148 0 2097148
系统时间
[root@mb ~]# date
Thu Dec 10 13:38:05 EST 2020
列出系统上所有的磁盘
[root@mb ~]# lsblk
df [选项] [文件名]
参数:
-a:显示所有的文件系统,包括虚拟文件系统。
-h:以人们易读的GB、MB、KB等格式显示。
-H:和-h参数一样,但是不是以1024,而是1000,即1k=1000,而不是1k=1024。
-i:不用硬盘容量,而是以inode的数量来显示。
-l:–local,只显示本地文件系统。
-t:–type=TYPE,只显示指定类型的文件系统。
-T:–print-type,显示文件系统类型。
-x:–exclude-type=TYPE,不显示指定类型的文件系统。
[root@mb ~]# df -h
[root@mb ~]# df -Th
显示每个文件和目录的磁盘使用空间文件的大小。
-h #以K M G为单位显示.
[root@mb ~]# du -h /opt/
0 /opt/home
16K /opt/
查看硬盘健康状态
yum -y install smartmontools
smartctl -i /dev/sda #查看硬盘信息
smartctl -H /dev/sda #查看硬盘健康状态
smartctl -A /dev/sda #查看原厂信息
使用dd进行磁盘读写速度测试
写速度
time dd if=/dev/zero of=test.dbf bs=8k count=300000
读速度:
time dd if=/root/test.dbf of=/dev/null bs=8k
ps (process status) : 进程状态
参数 描述
a 显示所有进程(包括其他用户的进程)
u 用户以及其他详细信息
x 显示没有控制终端的进程
[root@mb ~]# ps aux //查看所有进程
[root@mb ~]# ps aux | grep vsftp
VSZ:虚拟内存集,进程占用的虚拟内存空间;
RSS:物理内存集,进程占用实际物理内存空间。
top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。
[root@mb ~]# top
在top界面,可以通过一些指令实时改变显示内容(区分大小写):
Ctrl+L 擦除并且重写屏幕。
q 退出程序。
S 切换到累计模式。
s 改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。
f或者F 从当前显示中添加或者删除项目。
o或者O 改变显示项目的顺序。
l 切换显示平均负载和启动时间信息。
m 切换显示内存信息。
t 切换显示进程和CPU状态信息。
c 切换显示命令名称和完整命令行。
M 根据驻留内存大小进行排序。
P 根据CPU使用百分比大小进行排序。
T 根据时间/累计时间进行排序。
W 将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。
R:反向排序
kill命令可以杀死一个进程
[root@mb ~]# ps aux | grep vsftp
0 12956 0.0 0.0 53260 572 ? Ss 14:18 0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
[root@mb ~]# kill 12956
-9代表强制的意思
[root@mb ~]# kill -9 12956
ps -eo %mem,pid,user,args --sort -%mem |head
查看当前登录用户,系统平均负载等
[root@mb ~]# uptime
14:23:51 up 4:38, 2 users, load average: 0.00, 0.04, 0.05
最后三个数呢依次是 1分钟,5分钟,15分钟的平均负载
[root@mb ~]# who
root tty1 2020-12-10 11:16
root pts/0 2020-12-10 11:18 (192.168.4.1)
[root@mb ~]# whoami
root
[wxr@mb ~]$ whoami
wxr
[root@WXR ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3600576 2216 160412 0 0 2 3 9 9 0 0 100 0 0
0 0 0 3600576 2216 160428 0 0 0 0 59 45 0 0 100 0 0
0 0 0 3600576 2216 160428 0 0 0 0 60 56 0 0 100 0 0
vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。
需要安装sysstat 服务
sar -s 06:00:00 -e 10:00:00 -f /var/log/sa/sa23 查看23日当天6点至10点CPU使用情况
sar -q 查看队列数
sar -s 06:00:00 -e 10:00:00 -r -f /var/log/sa/sa23 查看23日当天6点至10点内存使用情况
sar -s 06:00:00 -e 10:00:00 -n DEV -f /var/log/sa/sa23 查看23日当天6点至10点网卡使用情况
sar -s 06:00:00 -e 10:00:00 -n DEV -f /var/log/sa/sa23 |grep team0 查看单块网卡的流量使用情况
sar -s 06:00:00 -e 10:00:00 -b -f /var/log/sa/sa23 查看23日当天6点至10点IO使用情况
检查对端服务器上端口22是否打开, telnet 192.168.2.10 22
和 telnet 类似命令 ssh -v -p 端口 ip
作用: 显示数据包到主机间的路径。
[root@MASTER ~]# traceroute 192.168.2.100
*Windows系统下是执行tracert的命令
查看系统中启动的端口信息
-a显示所有端口的信息
-n以数字格式显示端口号
-t显示TCP连接的端口
-u显示UDP连接的端口
-l显示服务正在监听的端口信息,如httpd启动后,会一直监听80端口
-p显示监听端口的服务名称是什么(也就是程序名称)
[root@mb ~]# ss -ntulp | grep 22
tcp LISTEN 0 128 *:22 *:* users:(("sshd",pid=899,fd=3))
tcp LISTEN 0 128 :::22 :::* users:(("sshd",pid=899,fd=4))
欢迎大家在评论区补存!!!
更新时间:2022-4-18 15:21:04