linux shell 批量处理相同后缀文件

假如把tmp文件夹下面的所有后缀为txt的文件移动到,message文件夹中

0

4个回答

楼上的答案太复杂了吧,直接使用mv tmp/*.txt message不可以吗?

如果是要移动tmp文件夹(包括子文件夹)中的所有以.txt为后缀的文件,可以使用find命令:
find tmp/ -name "*.txt" -type f -exec mv {} message \;

4
wangyaninglm
shiter 代码简洁之道,谢谢高手
接近 3 年之前 回复
src_folder = 'tmp'
dst_folder = 'message'

for entry in os.walk(src_folder):
    for file_name in entry[-1]:
        if file_name.endswith('.txt'):
            command = 'cp ' + entry[0] + os.sep + file_name + ' --verbose  ' + dst_folder
            os.system(command)

如果有重复文件名,比如/tmp/01/a.txt 和/tmp/02/a.txt都存在的话,也可以用os.mkdir新建子文件夹

1

mv *.txt message/

0
QiaXi
Valtava 回复shiter: 那这样我可能会写个python脚本,下面那样,仅供参考
接近 3 年之前 回复
wangyaninglm
shiter tmp有子目录呀
接近 3 年之前 回复
QiaXi
Valtava 或者mv tmp/*.txt message/ (如果tmp 和message在一个路径下)
接近 3 年之前 回复

mv tmp/*.txt message

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!