### [筆記] forfiles xcopy list files modified last x days

2015-09-14 未分類

筆記一下，免得忘掉

為了解決DMP批次轉檔效率問題，想出一個方法不知道可不可行

因為現行的方式是掃過一次NAS上的檔案，有異動的就去轉檔

然後NAS上的檔案可能有上萬個，所以導致效能很糟糕..

於是想說能不能先把有異動過的檔案，複製回本機，掃描過後，再去刪除，每天跑批次這樣..

先筆記一下怎麼把有異動過的檔案複製回本機 > forfiles /S /P d:\BaiduYunDownload /D +2015/09/01 /M V.mkv -c “cmd /C Xcopy @path d:\test /y /s /d” 不過因為 forfiles 不支援 UNC ，所以要結合其他的命令 PushD

@echo off > PushD “\192.168.10.119\資訊部” &&( > > > “c:\windows\system32\forfiles.exe” /D +%data% -c “cmd /C c:\windows\system32\xcopy @path d:\test /y /s /d” > > > ) & PopD 這樣的作法不會建立完整的路徑…還要想看怎麼解決

update

想了想，還是用 rsync 好了，比較好處理，先 rsync 到一個目錄，透過SMB 讓DMP主機Mount，再修改 config > rsync -Ra `find /nas/資訊部 -type f -mtime -1` /root 這樣會在/root 底下建立 /nas/資訊部/1.xxxx /nas/資訊部/2-xxx 的完整路徑

每天大約2300 跑一次，然後半夜讓DMP 去轉檔一次，然後每天中午清掉這個備份路徑(DMP應該可以轉完吧..)，先這樣試試看

update

1.清除舊資料 > rm -rf /NAS_Daily/nas ; rm -rf /tmp/query_7days_change.txt 2.find 產出檔案列表 > find /nas/查詢資料夾/ -name ‘@eaDir’ -prune -o -mtime -7 -type f -print > /tmp/query_7days_change.txt 3. rsync同步 > rsync -Rav –files-from=/tmp/query_7days_change.txt / /NAS_Daily/ 4. chmod 不然 Windows 那邊會進不了目錄 > chmod -R 777 /NAS_Daily

comments powered by Disqus
© 2017 by Lednerb
Bilberry Hugo Theme