1. rsync: `rsync` 是一个快速且灵活的文件同步工具,它可以在本地和远程系统之间同步文件和目录。使用 `rsync` 可以保持文件的修改时间、权限等属性。 示例命令: ```bash rsync avh /source/path /destination/path ``` 其中 `a` 表示归档模式,`v` 表示详细输出,`h` 表示以人类可读的格式显示文件大小。
2. scp: `scp`(安全复制)是一个用于在本地和远程系统之间安全地复制文件的工具。它使用SSH协议来加密传输的数据。 示例命令: ```bash scp /source/path/file.txt user@remotehost:/destination/path/ ``` 这条命令会将本地文件 `file.txt` 复制到远程主机的 `/destination/path/` 目录下。
3. cp: `cp` 命令用于在本地文件系统内复制文件和目录。 示例命令: ```bash cp /source/path/file.txt /destination/path/ ``` 这条命令会将本地文件 `file.txt` 复制到 `/destination/path/` 目录下。
4. mv: `mv` 命令用于移动或重命名文件和目录。当你想要将文件从一个目录移动到另一个目录时,可以使用 `mv`。 示例命令: ```bash mv /source/path/file.txt /destination/path/ ``` 这条命令会将 `file.txt` 从 `/source/path/` 移动到 `/destination/path/`。
5. inotify: `inotify` 是Linux内核的一个特性,它可以监控文件系统的变化,如文件的创建、修改、删除等。结合 `inotify` 工具(如 `inotifytools`),可以实现实时的文件同步。 示例命令: ```bash inotifywait m e modify /source/path/ | while read path action file; do rsync avh delete /source/path/ /destination/path/; done ``` 这条命令会监控 `/source/path/` 目录中的文件变化,一旦文件被修改,就会使用 `rsync` 将更改同步到 `/destination/path/`。
6. cron: `cron` 是Linux下的一个定时任务调度工具。你可以使用 `cron` 来定期运行文件同步任务。 示例命令: ```bash 0 /usr/bin/rsync avh delete /source/path/ /destination/path/ >> /var/log/rsync.log 2>