为了账号安全,请及时绑定邮箱和手机立即绑定

使用rsync仅显示文件名-在Python上递归吗?

使用rsync仅显示文件名-在Python上递归吗?

慕容森 2021-03-24 17:14:06
我正在使用rsync递归到该目录中的所有文件(包括子目录中的所有文件):rathi/20090209.02s1.1_sequence.txtrathi/20090209.02s1.2_sequence.txtrathi/20090729.02s4.2_sequence.txt.gzrathi/Homo_sapiens_UCSC_hg19.tar.gzrathi/SRR002321.fastq.bz2rathi/SRR002322.fastq.bz2rathi/SRR002323.fastq.bz2rathi/SRR002324.fastqrathi/SRR002324.fastq.bz2rathi/human_g1k_v37.fasta.gzrathi/s_1_1_sequence.txtrathi/s_1_sequence.txtrathi/tesssssssssssssssssssssssssssssstttttttt.txtrathi/test_data.tar.gzrathi/Homo_sapiensrathi/Homo_sapiens/UCSCrathi/Homo_sapiens/UCSC/hg19rathi/Homo_sapiens/UCSC/hg19/Annotationrathi/Homo_sapiens/UCSC/hg19/Annotation/Archivesrathi/Homo_sapiens/UCSC/hg19/Annotation/Archives/ok.txt我对此有一个问题。目录清单,例如rathi/Homo_sapiens/UCSCrathi/Homo_sapiens/UCSC/hg19rathi/Homo_sapiens/UCSC/hg19/Annotationrathi/Homo_sapiens/UCSC/hg19/Annotation/Archives 对我没有用。我只想获取文件路径。只能与rsync一起使用吗?我subprocess.call用来在Python中调用rsync。所以,我希望我的输出是这样的:rathi/20090209.02s1.1_sequence.txtrathi/20090209.02s1.2_sequence.txtrathi/20090729.02s4.2_sequence.txt.gzrathi/Homo_sapiens_UCSC_hg19.tar.gzrathi/SRR002321.fastq.bz2rathi/SRR002322.fastq.bz2rathi/SRR002323.fastq.bz2rathi/SRR002324.fastqrathi/SRR002324.fastq.bz2rathi/human_g1k_v37.fasta.gzrathi/s_1_1_sequence.txtrathi/s_1_sequence.txtrathi/tesssssssssssssssssssssssssssssstttttttt.txtrathi/test_data.tar.gzrathi/Homo_sapiens/UCSC/hg19/Annotation/Archives/ok.txt
查看完整描述

3 回答

?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

使用os.walk,它将列出所有文件。


import os

for root, dirnames, filenames in os.walk('rathi')

       print filenames

它将列出所有文件名。


查看完整回答
反对 回复 2021-04-01
?
繁星coding

TA贡献1797条经验 获得超4个赞

如果要跳过目录下的所有内容,可以执行

rsync -avz --exclude '*/' source_directory destination_directory

如果要跳过所有空目录,可以使用

rsync -avz --prune-empty-dirs source_directory destination_directory

但是我不清楚您到底想实现什么。您想跳过目录,但不跳过其中的文件,如果不同步目录,那么要在哪里同步?还是这仅仅是屏幕上的输出?

如果您只想更改屏幕上的输出,则可以通过grep传递它,即

rsync -avz source_directory destination_directory | grep "\."

然后,您只会看到带有的行.。请注意,您必须先转义.,否则代表通配符。当然,这假定目录名称中没有任何点。


查看完整回答
反对 回复 2021-04-01
?
aluckdog

TA贡献1847条经验 获得超7个赞

选项--filter可以帮助您吗?

rsync --filter =-* /


查看完整回答
反对 回复 2021-04-01
  • 3 回答
  • 0 关注
  • 207 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信