2024.7.15(find、stat、touch、dd、tree、scp、crontab命令)

一、linux系统管理
1.find命令

主要进行文件搜索

基本语法:find【文件路径】 【选项 选项的值】

-name *  根据文件的名称搜索文件

-type f|d   

-f        f 代表普通文件

-d       d代表目录

[root@aa ~]# find /opt/ -name "*a*"  在opt中查找带a的文件

[root@aa ~]# find /opt/ -name "*a*" -type d
[root@aa ~]# find /opt/ -name "*a*" -type f

[root@aa ~]# find / -name "httpd.conf"

[root@aa ~]# touch /opt/zhangminlaoshi.abc

[root@aa ~]# find / -name "zhangmin"

[root@aa ~]# find / -name "zhangmin" -type f

[root@aa ~]# find / -name "*zhangmin*" -type f

/opt/zhangminlaoshi.abc

[root@aa ~]# ls /opt/

apache-maven-3.9.8               Main.class

apache-maven-3.9.8-bin.tar.gz    Main.java

apache-maven-3.9.8-bin.tar.gz.1  zhangminlaoshi.abc

[root@aa ~]# ls -l /etc/*.conf

2.创建并设置文件最后修改时间

-windows中的时间

        1.创建时间

        2.修改时间

        3.访问时间

2.1使用stat文件获取文件的时间信息

语法: stat 文件

[root@aa ~]# stat /opt/zhangminlaoshi.abc

  文件:"/opt/zhangminlaoshi.abc"

  大小:0                 块:0          IO 块:4096   普通空文件

(device)设备:fd00h/64768d        Inode:34807658    硬链接:1

(access)权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)

(context)最近访问:2024-07-15 09:08:58.831543697 +0800

(access)最近更改:2024-07-15 09:08:58.831543697 +0800

(modify)最近改动:2024-07-15 09:08:58.831543697 +0800

(change)创建时间:-

2.2touch 文件名称 -m -d “日期格式”

案例创建⽂件,并p配置⽂件的修改时间

语法 touch -m -d ⽇期时间格式 ⽂件名称

⽂件不存在就创建并修改时间 ⽂件存在只配置最后修改时间

[root@aa ~]# touch /opt/b.txt -m -d "2024-7-14 00:00"

[root@aa ~]# ls -l /opt/

-rw-r--r--  1 root root       0 7月  15 09:32 a.txt

-rw-r--r--  1 root root       0 7月  14 00:00 b.txt

[root@aa ~]# touch /opt/c.txt -m -d "2024-7-13 00:00"

[root@aa ~]# touch /opt/d.txt -m -d "2024-7-12 00:00"

[root@aa ~]# touch /opt/e.txt -m -d "2024-7-11 00:00"

[root@aa ~]# ls -l /opt/

-rw-r--r--  1 root root       0 7月  15 09:32 a.txt

-rw-r--r--  1 root root       0 7月  14 00:00 b.txt

-rw-r--r--  1 root root       0 7月  13 00:00 c.txt

-rw-r--r--  1 root root       0 7月  12 00:00 d.txt

-rw-r--r--  1 root root       0 7月  11 00:00 e.txt

[root@aa ~]# touch /opt/f.txt

[root@aa ~]# ls -l /opt

-rw-r--r--  1 root root       0 7月  15 09:38 f.txt

[root@aa ~]# touch /opt/f.txt -m -d "2024-07-10 00:00"

[root@aa ~]# ls -l /opt

-rw-r--r--  1 root root       0 7月  10 00:00 f.txt

3.通过文件的最后修改时间搜索文件

语法:find 文件路径 -mtime +days/-days

-mtime 根据最后修改时间进行搜索

+  搜索几天之间的文件

-搜索几天之内的文件

[root@aa ~]# find /opt/ -mtime +3  三天前

/opt/e.txt

/opt/f.txt

[root@aa ~]# find /opt/ -mtime -3  三天内

/opt/

/opt/zhangminlaoshi.abc

/opt/a.txt

/opt/b.txt

/opt/c.txt

[root@aa ~]# find /opt/ -name “*.txt” -mtime -3   //搜索三天以内的.txt文件

删除

[root@aa ~]# find /opt/ -mtime +3 | xargs rm -rf

4.使用find执⾏ -exec

语法:find ⽂件路径

find -exec 对查找的结果进行修改

[root@aa ~]# find /opt/ -mtime +3 -exec rm -rf {} \;

[root@aa ~]# ls -l /opt/ > a.txt   重定向覆盖

[root@aa ~]# ls -l /opt/ >> a.txt   追加

5.根据⽂件size⼤⼩搜索⽂件

语法:find 路径 -size ⽂件⼤⼩ [常⽤单位 k M G]

size值 搜索等于size的⽂件

-size值 【0,size值)

+size值 (size值,正⽆穷)

[root@aa ~]# find / -size +100M   搜索文件大于100M

[root@aa ~]# find / -size -100M   搜索文件小于100M

[root@aa ~]# find / -size -100G -type f    搜索文件小于100G

6.扩展命令 dd

使⽤dd创建扩展命令 ⽣成指定⼤⼩的测试⽂件

语法 dd if=/dev/zero of=⽂件名称 bs=1M count=1

if表示输⼊⽂件

of表示输出⽂件

bs代表字节为单位的块⼤⼩

count代表被复制的块

其中/dev/zore是⼀个字符设备,会不断地返回0字节的⽂件

清空opt下的所有文件

[root@aa ~]# rm -rf /opt/*

[root@aa ~]# ls /opt/

[root@aa ~]# dd if=/dev/zero of=/opt/a.txt bs=1M count=1

[root@aa ~]# ls -lh /opt/

总用量 1.0M

-rw-r--r-- 1 root root 1.0M 7月  15 10:27 a.txt

[root@aa ~]# dd if=/dev/zero of=/opt/b.txt bs=5M count=1

[root@aa ~]# dd if=/dev/zero of=/opt/c.txt bs=10M count=1

[root@aa ~]# ls -lh /opt/

总用量 16M

-rw-r--r-- 1 root root 1.0M 7月  15 10:27 a.txt

-rw-r--r-- 1 root root 5.0M 7月  15 10:29 b.txt

-rw-r--r-- 1 root root  10M 7月  15 10:29 c.txt

[root@aa ~]# find /opt/ -size 5M    //查找等于5M的文件

/opt/b.txt

[root@aa ~]# find /opt/ -size +5M   //查找大于5M的文件

/opt/c.txt

[root@aa ~]# find /opt/ -size -5M    //查找小于5M的文件

/opt/

/opt/a.txt

7.tree命令

创建⽂件列表,将⽂件名称以树的形式展示

需要使⽤yum指令进⾏安装 yum -y install tree

[root@aa ~]# tree /opt

/opt

├── a.txt

├── b.txt

└── c.txt

[root@aa ~]# tree -l 2  只显示两级

8.scp实现linux系统之间的文件传输
8.1使⽤scp下载⽂件和⽬录

语法:scp [选项] ⽤户名@linux主机地址:/资源路径 linux本地⽂件路径

[root@localhost ~]# scp root@192.168.8.131:/opt/a.txt /opt/

root@192.168.8.131's password:

a.txt                      100% 1024KB  59.7MB/s   00:00   

[root@localhost ~]# ls /opt/

a.txt

8.2下载 把数据从远程主机保存到本地主机

在克隆机上使⽤scp指令复制⽬录到本地opt⽬录,需要添加-r选项,⽆法执⾏

第⼆次连接主机,不需要再次输⼊yes

-r 代表递归,主要作⽤⽂件夹

[root@aa ~]# mkdir /opt/d0

[root@aa ~]# ls /opt/

a.txt  b.txt  c.txt  d0

[root@aa ~]# mv /opt/*.txt /opt/d0

[root@aa ~]# ls /opt

d0

[root@localhost ~]# scp -r root@192.168.8.131:/opt/d0 /opt/

root@192.168.8.131's password:

a.txt                      100% 1024KB  63.5MB/s   00:00   

b.txt                      100% 5120KB  58.9MB/s   00:00   

c.txt                      100%   10MB  76.7MB/s   00:00  

8.3scp上传文件 把本地文件保存到远程主机  

语法 scp [选项] 本地主机资源路径 {远程主机}⽤户名@主机ip:放置路径

[root@aa ~]# scp /opt/d0/a.txt root@192.168.8.132:/opt/

root@192.168.8.132's password:

a.txt                           100% 1024KB  94.8MB/s   00:00 

[root@localhost ~]# ls /opt/

a.txt

[root@aa ~]# scp -r /opt/d0 root@192.168.8.132:/opt/

root@192.168.8.132's password:

a.txt                           100% 1024KB  91.4MB/s   00:00   

b.txt                           100% 5120KB  69.3MB/s   00:00   

c.txt                           100%   10MB 119.6MB/s   00:00 

[root@localhost ~]# ls /opt/

a.txt  d0

9.计划任务

crontab 【选项】

-l list查看当前⽤户的计划任务信息

-e edit编写计划任务

crontab分 时 日 月 周 要使⽤的完整路径 which命令(0和7都表示星期⽇)

[root@localhost ~]# crontab -l     list查看当前用户计划任务信息

no crontab for root

[root@localhost ~]# crontab -e    edit编辑计划任务 每一分钟执行一次

[root@localhost ~]# dd if=/dev/zero of=/opt/hhhhh.txt bs=100M count=1

[root@localhost ~]# vim list   //每一分钟向里面传输数据

[root@localhost ~]# which echo

/usr/bin/echo

[root@localhost ~]# crontab -e     //11:49 12:49等这些时间会传输

[root@localhost ~]# vim echo

[root@localhost ~]# tar -zcvf /tmp/etc.tar.gz /etc/

[root@localhost ~]# ls /tmp/

etc.tar.gz

[root@localhost ~]# which tar

/usr/bin/tar

[root@localhost ~]# crontab -e

[root@localhost ~]# rm -rf /tmp/etc.tar.gz

[root@localhost ~]# ls /tmp/

etc.tar.gz

9.1时间戳

[root@localhost ~]# date "+%T"   //显示当前时间

14:43:03

[root@localhost ~]# date "+%F"   //显示当前日期

2024-07-15

[root@localhost ~]# date "+%Y"   //显示年

2024

[root@localhost ~]# date "+%m"   //月

07

[root@localhost ~]# date "+%d"    //日

15

[root@localhost ~]# date "+%Y%m%d"   //年月日

20240715

[root@localhost ~]# date "+%Y%m%d%H%M%S"  //年月日时分秒

20240715144609

[root@localhost ~]# crontab -e      //在脚本中出现%,必须使⽤转义符\

  • 22
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值