Linux常用命令
date 显示系统日期
curl ifconfig.me linux下获取自己的外网IP
磁盘空间:
df -h 显示已经挂载的分区列表
du -sh dir5 (-s表示总结的意思) 即只列出一个总结的值
du -ah dir5 (-a表示包括目录和文件)
文件和目录操作:
ls -l 显示文件和目录的详细资料
ls -l test.txt 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls -F 查看目录中的文件
pwd 显示工作路径
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm file 删除一个叫做 ‘file‘ 的文件‘
rmdir dir 删除一个叫做 ‘dir‘ 的空目录‘
rm -r dir 删除一个叫做 ‘dir‘ 的目录并同时删除目录内文件
rm -r dir1 dir2 同时删除两个目录及它们的内容
mv dir new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp -a dir1 dir2 复制一个目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
文件搜索:
find / -name file 从 ‘/‘ 开始进入根文件系统搜索文件和目录
find /home/user -name \*.bin 在目录 ‘/ home/user‘ 中搜索带有‘.bin‘ 结尾的文件
日志文件操作:
grep ‘2020-07-06 11:3[4-7]‘ pay.log 查询2020-07-06 11点34到11点37之间的日志
grep -E "word1|word2|word3" file.txt 满足任意条件(word1、word2和word3之一)将匹配。
grep word1 file.txt | grep word2 |grep word3 必须同”时满足三个条件(word1、word2和word3)才匹配。
grep word1 *.log | grep word2 | more 分页查看符合条件的内容.
grep -C 5 foo file 显示file文件中匹配foo字串那行以及上下5行
grep -B 5 foo file 显示foo及前5行
grep -A 5 foo file 显示foo及后5行
grep --color word1 file.txt 彩色显示查询结果中的word1
查看文件内容:
cat file1 从第一个字节开始正向查看文件的内容
tac file1 从最后一行开始反向查看一个文件的内容
more file1 查看一个长文件的内容
less file1 类似于 ‘more‘ 命令,但是它允许在文件中和正向操作一样的反向操作
head -2 file1 查看一个文件的前两行
tail -2 file1 查看一个文件的最后两行
tail -f /var/log/messages 实时查看被添加到一个文件中的内容
文件打包、压缩和解压
打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。
gzip程序
缺点:不能压缩目录,生成压缩文件后会删除原文件。
压缩文件:
gzip tt.txt
解压文件:
gunzip tt.txt.gz
zip程序:
与gzip相比:可以压缩目录,可以保留原文件。
压缩文件:
zip test.zip tt.txt
压缩目录(一定要带上-r):
zip -r tt.zip dir5
解压文件:
unzip test.zip
tar本身不具有压缩功能。他是调用其他压缩功能实现的。
tar命令格式:
tar[必要参数][选择参数][文件]
必要参数有如下:
-c 建立新的压缩文件
-r 添加文件到已经压缩的文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip压缩/解压缩文件
-j 支持bzip2压缩/解压缩文件
-v 显示操作过程
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-f(file) 使用档案文件或设备,这个选项通常是必选的。
打包文件:(可以是文件和目录)
tar -vcf test.tar test.txt tt.txt
解包文件:
tar -xvf test.tar
压缩:
tar -zxcf test.gz dir5 异常信息.rtf
tar -jvcf test.bz2 dir5 异常信息.rtf
解压:
tar -zxvf test.bz2
tar -jxvf test.bz2
1.1 搜索日志文件内某段时间的日志
sed -n ‘/2018-07-05 13:20:00/,/2018-07-05 13:25:00/p‘ logfile.log
1.2 不解压gz文件 在文件内执行搜索
gunzip -c logfile.gz | grep ‘test‘