linux命令详解(2)
linux命令详解(2)
查看文件、内容处理命令
cat:查看文件
格式:
cat 文件名
选项:
-n:输出行号
例子:查看/etc/passwd文件
[ ~]# cat /etc/passwd
tac:查看文件,反向显示文件内容
格式:
tac 文件名
more:分页显示文件内容
格式:
more 文件名
q结束查询
less:分页显示文件内容
格式:
less 文件名
q结束查询
head:显示文件内容头部(默认前十行)
格式:
head 文件名
选项:
-n:显示前n行内容(n表示数字)
例子:查看/etc/passwd前十行
[ ~]# haed /etc/passwd
tail:显示文件内容尾部(默认后十行)
格式:
tail 文件名
选项:
-n:显示后n行内容(n表示数字)
-f:持续刷新,占领终端,可以进行实时监控(文件发生改变,终端会显示变化),可简写tailf
例子:查看/etc/passwd后3行
[ ~]# tail -3 /etc/passwd
sort:对文件的文本内容排序
格式:
sort 文件
选项:
-n:按数字排序
-r:反向排序(默认为升序)
-u:去重
uniq:对文件的文本内容去重
格式:
sort 文件
选项:
-c:计算重复次数
注意:
这里的去重只是相邻重复的才去重,所以在去重之前应该先排序
例子:
cat /var/log/httpd/access_log 查看httpd访问日志
cat /var/log/httpd/access_log | awk ‘{print $1}‘ 获取所有访问IP
cat /var/log/httpd/access_log | awk ‘{print $1}‘ | sort 对访问IP进行排序
cat /var/log/httpd/access_log | awk ‘{print $1}‘ | sort | uniq -c 去重并计算重复次数
cat /var/log/httpd/access_log | awk ‘{print $1}‘ | sort | uniq -c | sort -n -r 按数字从高往低进行排序
cat /var/log/httpd/access_log | awk ‘{print $1}‘ | sort | uniq -c | sort -n -r | head -N 取排名前N位(N表示数字)
wc:统计文本信息
选项:
-c:字节
-w:单词数量
-l:统计行数
扩展:
echo “this is ken”丨wc -c:12字节(包括转义字符\n)
printf “this is ken”丨wc -c:11(不包括\n)
vi/vim:命令行文本编辑器
——见vim编辑器
信息显示命令
uname:显示操作系统相关信息(Linux)
格式:
uname
选项:
-a:所有信息
-r:只看内核版本
例子:
hostname:显示或者设置当前系统的主机名
[ ~]:[当前登录的用户名@主机名 当前目录(~表示处于家目录)]
格式:
hostname 显示主机名
hostname 新名:修改主机名(重启失效)
hostnamectl set-hostname 新名:永久修改(不会立即生效)
或echo "NO.1">/etc/hostname
stat:显示文件或文件系统的状态
格式:
stat 文件名
du:计算磁盘空间使用情况
du 查看文件大小(默认显示一个目录下的所有的文件,最后一行会有大小的总和)
格式:
du
选项:
-s: 仅显示总和
-h: 人类易读
补充:
du和ls -l都可以查看文件大小
du -h:看的是目录(或文件)所占磁盘空间的大小
ls -lh:看的是文件实际大小
例子:
du -sh 路径 查看该路径下所有文件容量之和(不加路径默认为当前路径)
du -sh 路径/* 查看该路径下每个文件的容量
df:报告文件系统磁盘空间使用情况
格式:
df
选项:
-h:人类易读(大小)
例子:
uptime:系统运行状态
格式:
uptime
例子:
17:54:30 up 5:23, 1 user, load average: 0.00, 0.01, 0.05
系统时间 系统运行时间 当前用户数量 1分钟平均负载 5分钟平均负载 15分钟平均负载
查看cpu信息:cat /proc/cpuinfo
查看cpu数量cat /proc/cpuinfo |grep proc |wc -l
补充:
系统负载计算方式:负载/cpu数量
free:查看系统内存
格式:
free
选项:
-m: 以M为单位查看大小
-h: 人类易读
-s<间隔秒数> 持续观察内存使用状况。
例子:
[ ~]# free -h
ps:查看系统上运行的每个进程
格式:
ps aux(经常用法:ps aux | grep 服务名称)
例子:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
用户 进程号(唯一) cpu使用率 内存使用率 状态 启动时间 运行时间 启动命令
top:实时显示系统资源使用情况
格式:
top(top = uptime + free + ps aux)
s – 改变画面更新频率
l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的顺序排列表示进程列表
P – 以 CPU 占用率大小的顺序排列进程列表
M – 以内存占用率大小的顺序排列进程列表
h – 显示帮助
n – 设置在进程列表所显示进程的数量
q – 退出 top
date:显示、设置系统时间
格式:
date: 显示系统时间
date 时间: 设置系统时间
选项:
-s: 根据 STRING 设置时间(set)
-d 加上时间(-1day,+1day)显示昨天,明天的时间
例子1:设置时间格式
[ ~]# date -s "2019-01-13 13:30:00"
例子2:人类易读查看时间
[ ~]# date "+%Y-%m-%d %H:%M:%S"(2019-01-13 13:30:00)
或者[ ~]# data "+%F -%T"(注意大小写)
%Y 年(用 4 位表示) (1970…)
%m 月份(用两位表示) (01..12)
%d (月份中的)几号(用两位表示) (01..31)
%H 小时(按 24 小时制显示,用两位表示) (00..23)
%M 分钟数(用两位表示) (00..59)
%S 秒数(用两位表示)(00..60)
%T 时间,按 24 小时制显示(hh:mm:ss)
%F 显示 %Y-%m-%d