本文总结日常工作中经常用到的linux命令,作为总结,以便学习和回顾。
1. vim
1.1 查找文件中的指定字符串
a. vim service.log --> ?abc 从倒数第一行到正数第一行的遍历方式查找文件service.log中的字符串abc,并高亮显示.
b. vim service.log --> /abc 从第一行到最后一行的遍历方式查找文件service.log中的字符串abc,并高亮显示.
c. n 显示下一个a或者b搜索到的字符串abc
d. Ctrl + B 向上翻页
e. Ctrl + F 向下翻页
f. $ 显示最后一页
g. set hls 打开高亮
h. set nohls 关闭高亮
2. df
2.1 df -h
查看机器磁盘空间
2.2 du -h .
查看当前目录(.)下的文件大小
3. netstat
netstat -a 列出所有当前的连接
netstat -at 只列出 TCP 协议的连接
netstat -au只列出 UDP 协议的连接
netstat -l 只列出正在监听的链接
netstat -p 获取进程名,进程号以及用户Id等信息
4. pwd
显示当前路径
5. cd
cd abc 切换到abc目录
cd .. 返回上一目录
cd ../../.. 连续返回上一目录三次
6. ssh
ssh lance@192.168.0.122 使用指定账户登陆到指定机器(后续需要输入密码)
ssh 192.168.0.122 使用当前用户登录到192.168.0.122机器
7. tail
tail -f service.log 实时显示文件service.log的最后10行(动态)
tail -1000f service.log 实时显示文件service.log的最后1000行(动态)
tail -f * 实时显示当前目录下所有文件的的最后10行(动态)
8. mkdir
mkdir abc 创建目录
rmdir 删除空目录
9. rm
rm abc,删除abc文件
rm * 删除当前目录下的所有文件
rm -f 强制删除文件或目录
rm -r 递归删除指定目录下的所有文件和子目录
rm -rf abc 强制+递归删除目录为abc的目录
10. top
动态显示当前耗费资源最多进程信息
11.curl 构造http请求
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{"context":{"userId":"1967","userName":"lance"},"id": "11223344"}' 'http://service.company.com/business/function'
12. vmstat
-a:显示活动内页;
-f:显示启动后创建的进程总数;
-m:显示slab信息;
-n:头信息仅显示一次;
-s:以表格方式显示事件计数器和内存状态;
-d:报告磁盘状态;
-p:显示指定的硬盘分区状态;
-S:输出信息的单位。
后面跟数字, 如vmstat 2 10 表示每隔2秒采集一次数据,显示10次。
13. rpm -qa
rpm -qa 查询安装了那些软件包
rpm -qa zip 查看安装包,且安装包的名称包含zip
14.cat
cat lance.txt 显示整个文件
cat lance.txt | tail -n +100 | head -n 500 从第100行开始,显示500行,即显示100~599行
cat lance.txt | head -n 300 | tail -n +100 显示100行到300行
cat file1 file2 > lance.txt 将file1和file2合并成lance.txt
15.sed
常用选项:
-n∶打印到屏幕
-e∶编辑;
-f∶直接写入文件;
-i∶修改读取的文件内容。
常用命令:
a ∶新增
c ∶取代
d ∶删除
i ∶插入
p ∶打印行
s ∶取代
举例:
sed '1d' lance.txt 删除第一行
sed -n '100,200p' lance.txt 显示第100行到200行
sed -n '/Exception/p' lance.txt 显示包含Exception的所有行
sed '1c lance' lance.txt 将第一行替换为lance
16.查看曾经执行的命令历史记录
history
17.查看内存使用情况
free -h 格式化的显示linux的内存
18.压缩和解压缩文件
19.sudo
sudo rm file.txt
sudo -u lance1 rm file.txt 以lance1的身份执行删除命令
20.du
du -sh * 查看当前目录下的所有文件和目录的大小
21.grep 检索
ps -ef | grep lance 搜索进程中的lance
ps -ef | grep lance --color=auto 搜索进程中的lance,并高亮显示lance
cat lance.txt | grep lance --color=auto 搜索文件lance.txt中的lance,并高亮显示lance
more lance.txt | grep -C 10 zhang 搜索文件lance.txt中的zhang,并显示匹配到的数据的前后10行
more lance.txt | grep -A 10 zhang 搜索文件lance.txt中的zhang,并显示匹配到的数据的后10行
more lance.txt | grep -B 10 zhang 搜索文件lance.txt中的zhang,并显示匹配到的数据的前10行
grep -B 10 zhang lance.txt 搜索文件lance.txt中的zhang,并显示匹配到的数据的前10行
22.查看CPU的信息
lscpu
23 ln 创建连接
ln -s /usr/lance/data /dev/data 创建软连接,相当于window的快捷键;
ln -d /usr/lance/data.log /dev/data.log 创建硬连接,相当于文件的备份,仅支持文件不支持目录;
24 查看linux日期和时间
date
date -R
25 移动或重命名文件/目录
mv file1.txt /opt/lance 将文件移动到/opt/lance目录
mv file1.txt file2.txt /opt/lance 将文件移动到/opt/lance目录
mv *.txt /opt/lance 将文件移动到/opt/lance目录
mv file1.txt file2.txt 将文件file1.txt重命名为file2.txt
网友评论