linux常用命令-find命令与scp命令详解(超详细)

文章目录

  • 前言
  • 一、find命令介绍
      1. find命令简介
      1. find命令的基本语法
      1. 常用的find命令选项和表达式
  • 二、find命令示例用法
      1. 按照名称进行搜索
      1. 按照类型进行搜索
      1. 按照修改时间进行搜索
      1. 按照文件大小进行搜索
      1. 对搜索到的文件执行指定的命令
      1. 删除搜索到的文件
  • 三、scp命令介绍
      1. scp命令简介
      1. scp命令的基本语法
      1. 常用的scp命令选项
  • 四、scp命令示例用法
      1. 从本地复制文件到远程主机
      1. 从远程主机复制文件到本地
      1. 递归复制整个目录
      1. 从远程主机复制文件到本地,并指定SSH端口号
      1. 使用私钥文件进行身份验证
  • 总结

前言

本文将介绍两个常用的linux命令:find和scp。find命令用于在指定目录及其子目录中搜索文件和目录,并提供了灵活的搜索功能和操作选项。scp命令是一个安全的文件复制工具,可以在本地主机和远程主机之间进行文件传输。通过学习这两个命令的基本语法和常用选项,我们可以更高效地管理和操作文件。


一、find命令介绍

1. find命令简介

find命令用于在指定目录及其子目录中搜索文件和目录。它提供了灵活的搜索功能,可以根据不同的条件进行搜索,并执行各种操作。

2. find命令的基本语法

shell 复制代码
find [路径] [表达式]

其中,路径指定要搜索的目录路径,表达式定义了搜索的条件和操作。

3. 常用的find命令选项和表达式

  • -name:按照文件名进行匹配搜索。
  • -type:按照文件类型进行匹配搜索,如-type f表示搜索普通文件,-type d表示搜索目录。
  • -mtime:按照文件的修改时间进行匹配搜索,可以使用+n表示大于n天前的文件,-n表示小于n天前的文件,n表示正好n天前的文件。
  • -size:按照文件的大小进行匹配搜索,可以使用+n表示大于n个块的文件,-n表示小于n个块的文件,n表示正好n个块的文件。
  • -exec:对搜索到的文件执行指定的命令。
  • -delete:删除搜索到的文件。
  • -print:打印搜索到的文件路径。

二、find命令示例用法

1. 按照名称进行搜索

搜索 /opt/目录下所有的shell目录或文件的路径

shell 复制代码
find /opt/ -name "shell"

2. 按照类型进行搜索

搜索 /opt/目录下所有的shell目录的路径

shell 复制代码
find /opt/ -type d -name "shell"

3. 按照修改时间进行搜索

搜索 /opt/目录下所有7天以前目录或文件的路径

shell 复制代码
find /opt/ -mtime +7

4. 按照文件大小进行搜索

搜索 /opt/目录下所有文件大小大于100M文件的路径

shell 复制代码
find /opt/ -size +100M

5. 对搜索到的文件执行指定的命令

搜索 /opt/目录下所有.txt文件,并显示文件的详细信息

shell 复制代码
find /opt/ -name "*.txt" -exec ls -l {} \;

6. 删除搜索到的文件

搜索 /opt/目录下所有demo.txt文件,并删除

shell 复制代码
find /opt/ -name "demo.txt" -delete

三、scp命令介绍

1. scp命令简介

scp(Secure Copy)是一个用于在本地主机和远程主机之间安全复制文件的命令行工具。它使用SSH协议进行数据传输,提供了加密和身份验证功能,可以在不同主机之间传输文件和目录。

2. scp命令的基本语法

shell 复制代码
scp [选项] 源文件 目标文件

其中,源文件表示要复制的本地文件或远程文件,目标文件表示要将文件复制到的目标位置。源文件和目标文件可以是本地路径或远程路径。

3. 常用的scp命令选项

  • -r:递归复制整个目录。
  • -P <port>:指定远程主机的SSH端口号。
  • -p:保留文件的原始修改时间和权限。
  • -q:静默模式,不显示复制进度信息。
  • -C:开启压缩传输,加快传输速度。
  • -i <identity_file>:指定用于身份验证的私钥文件。
  • -l <limit>:限制传输速率。

四、scp命令示例用法

1. 从本地复制文件到远程主机

从本地复制/opt/module/demo.txt文件到hadoop103的/opt/module目录下

shell 复制代码
scp /opt/module/demo.txt root@hadoop103:/opt/module

shell 复制代码
scp /opt/module/demo.txt hadoop103:/opt/module

2. 从远程主机复制文件到本地

复制hadoop103的/opt/module/demo.txt文件到本地/opt/module目录下

shell 复制代码
scp root@hadoop103:/opt/module/demo.txt /opt/module

shell 复制代码
scp hadoop103:/opt/module/demo.txt /opt/module

3. 递归复制整个目录

递归复制整个/opt/module/python目录到hadoop103的/opt/module目录下

shell 复制代码
scp -r /opt/module/python root@hadoop103:/opt/module

shell 复制代码
scp -r /opt/module/python hadoop103:/opt/module

4. 从远程主机复制文件到本地,并指定SSH端口号

shell 复制代码
scp -P 2222 root@hadoop103:/opt/module/demo.txt /opt/module

shell 复制代码
scp -P 2222 hadoop103:/opt/module/demo.txt /opt/module

5. 使用私钥文件进行身份验证

shell 复制代码
scp -i /opt/module/private_key.pem /opt/module/demo.txt root@hadoop103:/opt/module

shell 复制代码
scp -i /opt/module/private_key.pem /opt/module/demo.txt hadoop103:/opt/module

总结

通过掌握这两个命令,我们可以更加高效地管理和传输文件。无论是在本地文件系统中搜索和操作文件,还是在不同主机之间进行文件传输,find和scp命令都能够帮助我们快速完成任务。

希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!

相关推荐
生活很暖很治愈3 分钟前
Linux——基础IO&软硬链接
linux·ubuntu
2401_8589368815 分钟前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
Roc.Chang27 分钟前
Ubuntu 下 VLC 无法启动(Segmentation fault)终极解决方案
linux·ubuntu·vlc·媒体播放
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
简单中的复杂1 小时前
【避坑指南】RK3576 Linux SDK 编译:解决 Buildroot 卡死在 host-gcc-final 的终极方案
linux·嵌入式硬件
wVelpro2 小时前
如何在Pycharm 2025.3 版本实现虚拟环境“Make available to all projects”
linux·ide·pycharm
程序员老舅2 小时前
C++高并发精髓:无锁队列深度解析
linux·c++·内存管理·c/c++·原子操作·无锁队列
雨中风华3 小时前
Linux, macOS系统实现远程目录访问(等同于windows平台xFsRedir软件的目录重定向)
linux·windows·macos
爱吃生蚝的于勒3 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森3 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix