Linux rsync command

Using rm -rf * is not very useful when we want to delete tens of thousands or hundreds of thousands or even millions of files in a linux system, because it takes a long time. In this case, we can use the linux system command rsync to handle it cleverly. rsync actually uses the replacement principle, and it also deletes hundreds of thousands of files in seconds.

    1. rsync installation, some systems have this command installed by default

#ubuntu系统: 
sudo apt-get install rsync
#fedora 系统: 
sudo yum install rsync

2. rsync provides some parameters related to deletion

rsync --help | grep delete
     --del                       an alias for --delete-during
     --delete                    delete extraneous files from destination dirs
     --delete-before             receiver deletes before transfer, not during
     --delete-during             receiver deletes during transfer (default)
     --delete-delay              find deletions during, delete after
     --delete-after              receiver deletes after transfer, not during
     --delete-excluded           also delete excluded files from destination dirs
     --ignore-errors             delete even if there are I/O errors
     --max-delete=NUM            don't delete more than NUM files
#其中--delete-before接收者在传输之前进行删除操作

3. Example

#清空目录或文件,如下: 
#1、先建立一个空目录 
mkdir /data/blank 
 
#2、用rsync删除目标目录 
rsync --delete-before -d -a -H -v --progress --stats /data/blank/ /var/edatacache/
#或者
rsync --delete-before -d /data/blank/ /var/edatacache/

#这样/var/edatacache目录就被快速的清空了。

选项说明:
–delete-before     接收者在传输之前进行删除操作
–progress          在传输时显示传输过程
-a                 归档模式,表示以递归方式传输文件,并保持所有文件属性
-H                 保持硬连接的文件
-v                 详细输出模式
–stats             给出某些文件的传输状态
-d                 transfer directories without recursing

#3、也可以用来删除大文件
#假如我们在/root/下有一个几十G甚至上百G的文件data,现在我们要删除它
#一、创建一个空文件
    touch /root/empty
#二、用rsync清空/root/data文件
    rsync --delete-before -d --progess --stats /root/empty /root/data

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325258870&siteId=291194637