Linux文件批量操作 Posted on 2016-11-23 | In Technical Report | | Visitors 批量递归重命名文件后缀名:1find . -maxdepth 2 -name "*.jpg" | rename "s/.jpg/.jpeg/" 批量压缩子文件夹: 1234567#!/bin/bash#run under the root dirdirList=`ls -p $1 |grep / |tr -d /`for dir in $dirListdo tar -czvf $dir.zip $dir/done 批量删除指定名字的文件: 1find . -maxdepth 2 -name "bing*" -exec rm -f {} \; 批量修改图片尺寸 1find ./ -name '*.jpg' -exec convert -resize 600x480 {} {} \; Windows Linux 显示某个文件下收文件的全路径 123dir /B /S D:\000books\*.jpg > namelist.txtfind /000books -name "*.*"> namelist 从路径 string 中提取文件夹名字作为lable 1234line = "E:\005OCRCNNAcceleration\OCR\result7_merge_bak\0000\P8_001_train1_P2.jpg";string res = line.substr(0, line.find_last_of('\\'));string lab = res.substr(res.find_last_of('\\')+1);label = atoi(lab.c_str()); 从txt中随机抽样,抽取部分行 12#sort随机排序,然后取前500,实现出来就是随机抽取500. 重定向到val_sample.txtsort -R val.txt | head -500 > val_sample.txt 9. 12