0
我有一個批處理腳本如下移動從一個目錄中的文件和追加的日期到文件名到另一個目錄
move /Y E:\Scripts\*.sql E:\Scripts\OBIEE
可以說,在E:\腳本我有一個文件insert.sql我想將其保存在E:\ Scripts \ OBIEE 中作爲insert_31102012.sql,其中31102012是當前日期2012年10月31日。
任何想法?
我有一個批處理腳本如下移動從一個目錄中的文件和追加的日期到文件名到另一個目錄
move /Y E:\Scripts\*.sql E:\Scripts\OBIEE
可以說,在E:\腳本我有一個文件insert.sql我想將其保存在E:\ Scripts \ OBIEE 中作爲insert_31102012.sql,其中31102012是當前日期2012年10月31日。
任何想法?
這會將日期(_YYYYMMDD)附加到E:\ Scripts \目錄中的所有.SQL文件,然後將它們移動到E:\ Scripts \ OBIEE \子文件夾。
@echo off
cd E:\Scripts\
set cur_yyyy=%date:~10,4%
set cur_mm=%date:~4,2%
set cur_dd=%date:~7,2%
for /f %%f in ('dir /b *.sql') do (
rename %%f %%~nf_%cur_yyyy%%cur_mm%%cur_dd%%%~xf
move %%~nf_%cur_yyyy%%cur_mm%%cur_dd%%%~xf ./OBIEE/
)
謝謝瑞克。如果只有一個文件會怎麼樣? – Tamseyc
如果\ Scripts \文件夾中只有一個文件,它仍然會重命名\移動該文件。如果有多個SQL文件,但你只打算移動一個,你可以改變「* .sql」來定位特定文件(即「Insert.sql」) – Rick
ok,非常感謝。它起初工作,但第二次嘗試產生了一個錯誤:系統找不到指定的文件。如果我可以問,('dir/b * .sql')中for/f %% f的/ b是什麼 – Tamseyc