侧边栏壁纸
博主头像
L1

write and record

  • 累计撰写 12 篇文章
  • 累计创建 3 个标签
  • 累计收到 1 条评论
标签搜索

目 录CONTENT

文章目录

2.1_linux高级命令

L1
L1
2022-08-20 / 0 评论 / 0 点赞 / 83 阅读 / 815 字

find命令

find 搜索路径 [选项]
# 选项
-name : 搜索文件的名字,支持*通配符
-type : f 代表文件,d代表文件夹

# 例子
find /etc -name "httpd.conf" -type f

## 查看文件的创建修改时间
╰─>$ stat 1.txt                                                                                                                          14:26:54
  文件:1.txt
  大小:12              块:8          IO 块大小:4096   普通文件
设备:259,2     Inode: 2669147     硬链接:1
权限:(0644/-rw-r--r--)  Uid: ( 1000/     lee)   Gid: ( 1000/     lee)
访问时间:2022-08-12 23:20:27.609510029 +0800
修改时间:2022-08-12 23:20:24.696151429 +0800
变更时间:2022-08-12 23:20:24.696151429 +0800
创建时间:2022-08-12 23:20:12.146042778 +0800

## touch修改文件的修改时间
touch -m -d "2022-08-14 00:00" 文件名称

根据文件修改时间搜索文件

find 路径 -mtime +days/-days
-mtime : 根据文件最后的修改时间搜索文件
+ : 搜索x天前的文件信息,不包含x天的
- : 搜索x天内的文件信息

# 例子:搜索三天以内的txt文件信息
find ./ -name "*.txt" -mtime -3

dd命令

生成指定大小的测试文件

dd if=/dev/zero of=filename bs=1M count=number
选项
if : 代表输入文件,/dev/zero是一个字符设备,会不断返回0值字节
of : 代表输出文件
bs : 代表文件块的大小
count : 代表文件由多少个块组成

根据文件大小搜索文件

find 路径 -size [filesize,单位:kb mb Gb]
filesize : 搜索多少大小的文件
-filesize : [0-filesize)
+filesize : (filesize-♾️)

# 例子:搜索当前目录下大小为5Mb的文件
find ./ -type f -size 5M 

-exec选项

案例:删除Linux系统下10天前的日志文件

# 方法一
find /var/log -name "*.log" -mtime +10 | xargs rm -rf
# 方法二
find /var/log -name "*.log" -mtime +10 -exec rm -rf {} \;

tree命令

将文件以树的形式列出来

# 安装tree
dnf install tree -y
# 基本用法
tree [指定路径]

scp命令

用于linux系统之间的文件传输

# 从远程下载
scp [选项] 用户@主机ip:资源地址 本地文件路径
选项
-r : 递归操作,针对文件夹
# 上传文件
scp [选项] 本地资源路径 用户@主机ip:远程路径 
选项
-r : 递归操作,针对文件夹

crontab+tar实现文件备份

基本用法

crontab [选项]
选项
-l : 列出计划任务
-e : 编写计划任务

# 计划任务格式
分 时 日 月 周 要执行的命令

## 案例:每天凌晨两点把/etc目录备份到/tmp目录下,要求把/etc打包成etc.tar.gz格式
### 查看tar命令的完整路径
which tar
/usr/bin/tar

# crontab -e编辑任务计划
0 2 * * * /usr/bin/tar -zcf /tmp/etc.tar.gz /etc
# 上边的缺点是每次备份就会覆盖掉上一次备份

# 扩展命令:date
date +"时间格式"
时间格式
%F : 年-月-日
&T : 小时:分钟:秒
%Y : 年
%m : 月
%d : 日
%H : 小时
%M : 分钟
%S : 秒

# 案例:备份文件时,要求按时间作为备份文件的名称
#crontab -e
0 2 * * * /usr/bin/tar -zcf /tmp/etc-$(date +"\%Y\%m\%d").tar.gz /etc
# 计划任务中百分号前要加上反斜杠转义,不然计划任务出错无法执行

0

评论区