將海量文件用split切割清單,並逐一處理

思路:bash

1. 將海量文件,ls 出文件清單;
2. 使用split將清單,以2000位單位切割成N個小文件清單
3. 使用for循環語句,結合seq增量計數,逐一處理
4. 爲避免機器處理不及時,造成文件積壓,過程當中使用where循環檢查目標目錄文件數量
 code

#!/bin/bash
fsource=/root/script/vlist/file_split-
dsource=/root/vfpa/temp/02
dtarget=/root/vfpa/source/IWSCIM

for i in `seq -w 66`
do
        FILENAME=$fsource$i
        for j in `cat $FILENAME`
        while (( `ls -l $dtarget | wc -l` > 1000 )); do sleep 1m; done;
        do
        mv $dsource/$j $dtarget
        done

echo process done $i files, Sleeping in 20 minutes >> /root/script/vfpa_list3_mv.log
sleep 20m
continue
done


### split -a 2 -l 2000 -d Flist vlist/file_split-
相關文章
相關標籤/搜索