其他命令
查看ip
查看centos7的ip地址 ip addr
查看主机名
查看主机名 hostname
查看环境变量
查看PATH环境变量 echo $PATH
修改PATH环境变量
vi /etc/profile
最后一行添加 export PATH=.:$PATH
重新加载profile source /etc/profile
查看linux操作系统版本
查看linux操作系统版本 cat /etc/os-release
vi命令
01 命令行模式
复制当前行:yy
粘贴:p
撤销上次修改:u(undo, 会撤销当次编辑模式的所有修改,只会撤销命令行模式的上一个命令)
删除当前行:dd
删除当前n行:nd
跳转到最后一行:shitf+g
跳转到第一行:gg
02 编辑模式(按i,和a进入)
03 底线模式(按冒号进入)
跳转到指定行::n
显示行号::set nu
隐藏行号::set nonu
ls命令
linux中.xxx是隐藏文件
查看隐藏文件 ls -a
文件内容统计相关命令
wc命令
wc [option] [file]
option:
-c 统计字节数
-m 统计字符数
-w 统计单词数
-l 统计行数
-L 统计最大行数字节数
sort命令
sort [option] [file]
option:
无参 按asc码循序排序
-n 按字符串数值排序
-r 倒序排序
-k 列数 按给定列排序,列编号从1开始。 通过空格分割行中的列
uniq命令
uniq [option] [file]
option:
无参 去除文件中连续重复的行
-c 统计重复行次数
-u 返回重复行次数等于1的行内容
head命令
head [option] [file]
option:
-n 行数 打印前n行数据
日期相关命令
date命令
带格式输出当前时间 date +"%Y-%m-%d %H:%M:%S"
获取当前时间戳(单位秒) date +%s
获取当前时间戳(单位毫秒) date +%s”000“
获取指定日期时间戳(单位秒) date --date="2021-05-18 14:23:22" +%s
获取前一天时间戳(单位秒) date --date="1 days ago" +%s
获取指定月份的天数 date --date="2021-03-01 1 days ago" +%d
进程相关的命令
ps命令
显示系统内的所有进程 ps -ef
netstat命令
在线安装netstat命令 yum install -y net-tools
查看进程端口 netstat -anp
jsp命令
说明:jdk开发工具包中的命令,用于查看当前用户运行的java程序
top命令
说明:跟ps命令相同,用于查看进程信息,只不过top命令是动态的查看进程信息
kill命令
杀掉进程 kill pid
强制杀掉进程 kill -9 pid
linux三剑客
grep命令/zgrep
grep [option] "查找内容" 文件
zgrep [option] "查找内容" 文件
文件可以使用通配符*
option:
-i 忽略大小写查找文件内容
-n 显示查找内容所在的行号
-v 显示不包含的内容
sed命令
说明:用来自动编辑一个或多个文件,简化对文件的反复操作
a/i: 增加
d: 删除
s:替换
-i: 直接修改源文件
增加内容:
在文件内容的第2行下面添加hahaha内容 sed '2a\hahaha' hello.txt
在文件内容的第2行上面添加hahaha内容 sed '2i\hahaha' hello.txt
在文件内容的第最后一行下面添加hahaha内容 sed '$i\hahaha' hello.txt
删除内容:
删除文件中第2行数据 sed '2d' hello.txt
删除文件中最后一行数据 sed '$d' hello.txt
替换文件内容:
将文件中第一次出现的L替换成a sed 's/L/a/1' hello.txt
sed '[address]s/pattern/replacement/flags' file
address: 表示指定要操作的具体行,是个可选项。如果为空则表示所有行
s: 表示替换操作
pattern: 指需要替换的内容
replacement: 需要替换的新内容
flag: 分为如下情况
① 当flags为1~512之间的任意一个数字,表示指定要替换的字符串在这一行中出现第几次时才进行替换
② 当flags为g时,表示对每行数据中所有匹配到的内容全部进行替换
③ 当flags为空时,只会在第一次匹配成功时做替换操作
*注上面的操作都是在缓存中完成,不会修改实际的文件。如果修改源文件,则需要加上 -i 参数
awk命令
说明:是一个文本分析工具,就是把文件逐行读入,以空白字符为默认分隔符。将每行内容切面,切开的部分再进行各种分析处理。切割后的每列使用$n表示,n从1开始。$0表示一整行
awk [option] programe file
option:
-F 指定分割符,默认使用空白字符分割
打印文件中第一列 awk '{print $1}' hello.txt
使用冒号分割,打印第一列 awk -F : '{print $1}' hello.txt
使用正则表达式过滤 awk '/正则表达式/{print $0}' hello.txt
第一列中符合正则,则打印这列的所在行
awk '($1 ~ /正则表达式/){print $0}' hello.txt
第一列中不否符合正则,则打印这列的所在行
awk '($1 !~ /正则表达式/){print $0}' hello.txt