展开

关键词

rsync同步时,删除目标目录比源目录多余文件的方法(--delete)

.txt,fileA2.txt,fileA3.txt} $ touch dirB/{fileA1.txt,fileA2.txt,fileA3.txt,fileB1.txt,fileB2.txt,fileB3 $ rsync -avz dirA/ dirB/ sending incremental file list ./ fileA1.txt fileA2.txt fileA3.txt sent 199 bytes is 0.00 4)将dirA目录内的fileA1.txt和fileA2.txt不同步到dirB目录内。 目录内的fileA1.txt和fileA2.txt不同步到dirB目录内,并且在dirB目录内删除多余的文件。 0.00 这里可以看到只有fileA3.txt被同步到dirB目录内,同时dirB目录内的fileA1.txt和fileA2.txt两个被过滤的文件也被删除掉了。

2.8K60

使用rsync 的 –delete参数删除目标目录比源目录多余的文件

创建示例如下: $ mkdir {dirA,dirB}    //创建两个测试目录 //分别在两个目录创建相应的文件 $ touch dirA/{fileA1.txt,fileA2.txt,fileA3 .txt} $ touch dirB/{fileA1.txt,fileA2.txt,fileA3.txt,fileB1.txt,fileB2.txt,fileB3.txt} 1)将dirA的所有文件同步到 $ rsync -avz dirA/ dirB/ sending incremental file list ./ fileA1.txt fileA2.txt fileA3.txt sent 199 bytes is 0.00 4)将dirA目录内的fileA1.txt和fileA2.txt不同步到dirB目录内。 0.00 这里可以看到只有fileA3.txt被同步到dirB目录内,同时dirB目录内的fileA1.txt和fileA2.txt两个被过滤的文件也被删除掉了。

5010
  • 广告
    关闭

    【玩转 Cloud Studio】有奖调研征文,千元豪礼等你拿!

    想听听你玩转的独门秘籍,更有机械键盘、鹅厂公仔、CODING 定制公仔等你来拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux好用命令之rsync命令原创

    但是在dirB内除了fileB3.txt这个文件不删之外,其他的都删除 $ rsync -avz --delete --exclude "fileB3.txt" dirA/ dirB/ 将dirA目录内的fileA1 .txt和fileA2.txt不同步到dirB目录内 $ rsync -avz --exclude="fileA1.txt" --exclude="fileA2.txt" dirA/ dirB/ 将dirA 目录内的fileA1.txt和fileA2.txt不同步到dirB目录内,并且在dirB目录内删除多余的文件 $ rsync -avz --exclude="fileA1.txt" --exclude= "fileA2.txt" --delete dirA/ dirB/ 将dirA目录内的fileA1.txt和fileA2.txt不同步到dirB目录内,并且在dirB目录内删除多余的文件,同时,如果dirB 内有fileA2.txt和fileA1.txt这两个被排除同步的文件,仍然将其删除 $ rsync -avz --exclude="fileA1.txt" --exclude="fileA2.txt"

    6210

    Python多线程之线程创建和终止

    '+repr(FileA.closed)+'\n' print FileB.name + ' closed? '+repr(FileA.closed)+'\n' print 'after A stoped, '+FileB.name + ' closed? '+repr(FileB.closed)+'\n' def daemonstop(): stopevt = threading.Event() FileA = open ())+'alive\n' print FileA.name + ' closed? '+repr(FileA.closed)+'\n' if not FileA.closed: print 'You see the differents, the resource

    51540

    Linux 系统操作

    文件创建和删除 touch filea fileb:创建文件 filea 和 fileb rm filea:删除文件 filea 2. 文件编辑 cat>filea:直接在终端中编辑 filea 文件(ctrl+c 保存退出)。无该文件时会自动创建。 gedit filea:打开 filea 文件进行修改 echo 123>filea:将输出进行重定向,把 123 输出到 filea 文件 3. 文件查看 用法: cat filea: 从头到尾查看文本内容 head -10 filea:查看文本内容前十行 tail -10 filea:查看文本内容倒数十行 more -5 filea:支持翻页查看文本内容 /fileb:将 filea 重命名为 fileb(文件 ——> 文件) mv /filea /etc:将 filea 移动到 etc 目录里(文件 ——> 目录) mv /filea /etc/fileb

    70720

    HDFS|基本概念和读写原理

    03 — 向集群中写入一个文件FileA ? FileA假定大小为100M。 Client将FileA按64M分块。 04 — 从集群中读文件FileA 上面是写入FileA的过程,HDFS默认用户会多次读取这个文件FileA,那么如何读取呢? ? a. client向NameNode发送读请求。 b. NameNode查看Metadata信息,返回fileA的block的位置给client。

    77370

    轻量集群管理工具PSSH

    root@192.168.31.158:22 PSSH 示例 pssh 是最基本的命令,PSSH 还提供了其他方便的命令,下面看几个示例 从本地拷贝文件到各个服务器 例如 把本机的 /root/fileA 拷贝到各个服务器的 /tmp/fileA pscp -h hostlist /root/fileA /tmp/fileA ?

    74670

    linux修改文件或目录的所有者(chown)和用户组(chgrp)

    drwxr-xr-x 2 myy groupa 4096 Sep 26 06:07 zgzdir # --修改filea的文件属性,所有组都增加“x”权限 [root@redhat zgz]# chmod a+x filea [root@redhat zgz]# ls -l total 24 -rwxr-xr-x 1 myy groupa 0 Sep 26 05:48 filea drwxr-xr-x drwxr-xr-x 2 myy groupa 4096 Sep 26 06:07 zgzdir # 修改filea文件属性所有组都除去“x”权限 [root@redhat zgz]# chmod a-x filea [root@redhat zgz]# ls -l total 24 -rw-r--r-- 1 myy groupa 0 Sep 26 05:48 filea drwxr-xr-x 因此大家一定要注意当前用户,例如: [zgz@redhat ~]$ chgrp group filea chgrp: changing group of `filea': Operation not permitted

    6.2K10

    Linux学习笔记(四)目录操作

    复制时保留原有的时间; cp -a复制时保留原有的权限、属组、时间 2. mv命令 mv文件和文件夹的移动功能、重命名功能 (1)将原文件名改为新文件名 我们可以使用命令mv 原文件名 新文件名: mv file filea 将文件名file改为filea ? (2)将文件移动到目标文件夹 我们可以使用命令mv 要移动的文件 目标文件夹 mv filea /tmp 将文件filea移动到/tmp目录下 ? (3)将文件移动的同时重命名 我们可以使用命令mv 文件夹中的文件 目标目录及新文件名 mv /tmp/filea /fileb 将tmp文件夹下的文件filea移动到根目录下,并重命名为fileb 通配符 我们使用touch命令创建文件4个以file开头的文件fileaa、fileabc、filea、fileb、filec ?

    50240

    文件IO (一).非缓冲IO实现mycopy

    int main(int argc,char *argv[]) //带参数的主函数 { int fr=0,fw=0,rres=0,res=-1; char tmpc='\0'; char *fileA = argc) //进行参数检查,不符合则提示并返回 { printf("argument number error: need only two args <fileA> and <fileB >\n"); return res; } fileA=argv[1]; //将第一个参数作为A文件 fileB=argv[2]; //将第二个参数作为B文件 if(-1 = = (fr=open(fileA,O_RDONLY))) //以只读的方式打开A文件 { printf("cannot open file:%s\n",fileA); return ,fileB); res=0; } if(-1 == rres) //如果返回结果是-1,就代表读取出错 { printf("read error on %s\n",fileA

    11430

    跟我一起学docker(六)--数据管理

    在下图可看到即使删除aatest,bbtest中仍然有fileA文件。 ? 在aatest中创建了文件fileA,bbtest可以看到fileA,删除aatest容器后,fileA在bbtest中还可以看到。 ? 创建dbdata数据卷容器并写入文件:fileA、fileB、fileC ? 执行备份命令创建备份tar包: ? 恢复: 如果恢复数据到一个容器,可以参照下面的操作。

    33320

    Python 实用的小例子分享 1~3

    difflist.extend(range(i + 1, cnt)) return [no+1 for no in difflist] 主函数: # 返回的结果行号从1开始 # list表示fileA 和fileB不同的行的编号 def file_diff(fileA, fileB): try: cntA = statLineCnt(fileA) cntB = statLineCnt(fileB) if cntA > cntB: return diff(fileA, cntA, fileB) return diff(fileB, cntB, fileA) except Exception as e: print(e) 比较两个文件A和B,拿相对较短的文件去比较,过滤行后的换行符 使用file_diff 函数 if __name__ == '__main__': import os print(os.getcwd()) ''' 例子: fileA

    20110

    Git 系列教程(10)- 仓库别名

    为了解决取消暂存文件的易用性问题,可以向 Git 中添取消暂存别名 $ git config --global alias.unstage 'reset HEAD --' 这会使下面的两个命令等价: $ git unstage fileA $ git reset HEAD -- fileA 通常也会添加一个 last 命令 $ git config --global alias.last 'log -1 HEAD' 这样,可以轻松地看到最新一次提交历史

    10820

    标准IO (二).缓冲型IO库函数

    =s[len-1-i]; s[len-1-i]=tmpc; } return s; } int main() { FILE *fp=NULL,*fb=NULL; char *fileA B,出错则提醒并退出 { printf("cannot open file:%s\n",fileB); return -1; } if(NULL == (fp=fopen(fileA ,"r+"))) //以读也可写的方式打开文件A,出错则提醒并退出 { printf("cannot open file:%s\n",fileA); return -1; } if(1 > len) //如果文件为空,就提醒并退出 { printf("%s is a empty file,please input something\n",fileA (char)*len,1,fp)) //从文件A中读取len个char长度的内容写到tmps的临时空间中,出错则提醒并退出 { printf("file read error:%s\n",fileA

    13930

    Python: glob匹配文件

    dir dir/file.txt dir/file1.txt dir/file2.txt dir/filea.txt dir/fileb.txt dir/subdir dir import glob for name in glob.glob('dir/*'): print name dir/file.txt dir/file1.txt dir/file2.txt dir/filea.txt txt'): print name dir/file1.txt dir/file2.txt dir/filea.txt dir/fileb.txt 字符区间匹配[0-9] 比如匹配后缀前是数字的文件

    1.1K30

    1000+人推荐的30个实用的Linux命令

    # cp -p fileA fileB 覆盖文件之前系统会提示你。 # cp -i fileA fileB 11.mv命令 将fileA更名为fileB。 -i选项会在覆盖前提示。 # mv -i fileA fileB 12.cat命令 cat命令用来同时查看多个文件。 # cat fileA fileB 要是某个文件在一个屏幕/页面显示不了,你可以使用cat命令来合并more和less命令,查看文件内容。 # cat install.log | less # cat install.log | more 13.cd命令(更改目录) 借助cd命令(更改目录),它会进入到fileA目录。 #sort fileA.txt #sort -r fileA.txt 16.vi命令 对大多数类似UNIX的操作系统而言,vi是最流行的文本编辑器。下面例子使用-R选项,打开只读方式的文件。

    487110

    文件IO (二).结构体存取(1)

    ,"hong",88}, {16,"tuna",98}, {19,"tony",60}, {90,"duno",98} }; if (-1==(fa=open(fileA ,O_RDWR|O_CREAT|O_TRUNC,0644))) //以读写方式打开文件A { printf("cannot open file:%s\n",fileA); return =read(fa,&maxscore,sizeof(int))) //将分数读到maxscore中,作为初始的最大分数 { printf("read error on:%s\n",fileA = read(fa,&tscore,sizeof(int))) //将分数写到tscore中 { printf("read error on:%s\n",fileA); = read(fa,&tscore,sizeof(int))) //将分数写到tscore中 { printf("read error on:%s\n",fileA);

    8940

    HDFS极简教程

    有一个文件FileA,100M大小。Client将FileA写入到HDFS上。 HDFS按默认配置。 HDFS分布在三个机架上Rack1,Rack2,Rack3。 a. Client将FileA按64M分块。分成两块,block1和Block2; b. Client向nameNode发送写数据请求,如图蓝色虚线①——>。 c. 读操作就简单一些了,如图所示,client要从datanode上,读取FileA。而FileA由block1和block2组成。? b. namenode查看Metadata信息,返回fileA的block的位置。

    43360

    2.7 Git 基础 - Git 别名

    Git 中添加你自己的取消暂存别名: $ git config --global alias.unstage 'reset HEAD --' 这会使下面的两个命令等价: $ git unstage fileA $ git reset HEAD -- fileA 这样看起来更清楚一些。

    21030

    超级实用的30个Linux命令!

    # cp -p fileA fileB覆盖文件之前系统会提示你。 # cp -i fileA fileB11.mv命令将fileA更名为fileB; -i选项会在覆盖前提示;如果文件已经存在,会要求予以确认。 # mv -i fileA fileB12.cat命令cat命令用来同时查看多个文件。 # cat fileA fileB要是某个文件在一个屏幕/页面显示不了,你可以使用cat命令来合并more和less命令,查看文件内容。 #sort fileA.txt#sort -r fileA.txt16.vi命令对大多数类似UNIX的操作系统而言,vi是最流行的文本编辑器,下面例子使用-R选项,打开只读方式的文件,按“:q”即可退出

    6030

    扫码关注腾讯云开发者

    领取腾讯云代金券