狠狠久久噜噜localhost,dxj久久成国产精品,亚洲午夜久久久精品影院,黄色网站在线观看免费播放观看,www成人,免费操逼的毛片立即可以播放,青青草成人在线观看

萬企互聯-專注高端網站建設
掃描關注萬企互聯微信公眾賬號

掃一掃微信二維碼

bat腳本遠程備份文件

編程代碼?2023/11/26? 1092

配合Windows計劃任務,編寫腳本并設置定時啟動

從192.168.1.1\test文件夾下復制全部文件到本地test文件夾下,并保留修改時間最近的3個sql文件,刪除其他的sql文件


@echo off&setlocal enabledelayedexpansion
xcopy /F /d \\192.168.1.1\test\*.* F:\test\
pushd F:\test\
set n=0
for /f "delims=" %%a in ('dir /a-d-h /b /o-d *.sql') do (
if !n! geq 3 del "%%~a"
set /a n+=1
)
popd


腳本說明

xcopy

/f 復制時顯示源文件名和目標文件名。

/d [:MM-DD-YYYY] 僅復制指定日期或之后更改的源文件。 如果未包含 MM-DD-YYYYY 值,xcopy則復制比現有目標文件更新的所有源文件。 此命令行選項允許更新已更改的文件。

setlocal enabledelayedexpansion 擴展本地環(huán)境變量延遲

在cmd執(zhí)行命令前會對腳本進行預處理,其中有一個過程是變量識別過程,在這個過程中,如果有兩個%括起來的如%value%類似這樣的變量,就會對其進行識別,并且查找這個變量對應的值,再而將值替換掉這個變量,這個替換值的過程,就叫做變量擴展,然后再執(zhí)行命令。

但如果出現動態(tài)的情況會怎樣?在cmd執(zhí)行中,發(fā)生動態(tài)的一種情況是在 for語句中進行變量賦值。

開啟了變量延遲,在for循環(huán)中每次賦予str的值才會被傳遞下去,但這里的str變量符必須要寫成!str!

Pushd&Popd

Pushd 命令

改變當前目錄到指定目錄,并保存當前的目錄在堆棧頂端

Popd 命令

改變當前目錄,跳轉到堆棧頂端保存的目錄,并將堆棧頂端的目錄刪除

for

delims= 用來告訴for每一行應該拿什么作為分隔符

用%%a代替循環(huán)中的每一行(每個文件名)

EQU - 等于

NEQ - 不等于

LSS - 小于

LEQ - 小于或等于

GTR - 大于

GEQ - 大于或等于

set /a 是指定一個變量等于一串運算字符

dir /a-d-h /b /o-d *.sql

/a 僅顯示具有指定屬性的目錄和文件的名稱

d - 目錄

h - 隱藏文件

s - 系統(tǒng)文件

可以使用這些值的任何組合,但不要使用空格分隔值。 (可選)可以使用冒號 (:) 分隔符,也可以使用連字符 (-) 作為前綴來表示“not”。 例如,使用 -s 屬性不會顯示系統(tǒng)文件

/b 顯示目錄和文件的裸列表,沒有其他信息

/o[[:]] 根據 sortorder 對輸出進行排序,它可以是以下值的任意組合

d - 按日期/時間,最早-使用前綴反轉排序順序

獲取昨天的日期并格式化輸出

配合vbs腳本

:: yesterdays date
@echo off
set day=-1
echo >"%temp%\%~n0.vbs" s=DateAdd("d",%day%,now) : d=weekday(s)
echo>>"%temp%\%~n0.vbs" WScript.Echo year(s)^& right(100+month(s),2)^& right(100+day(s),2)
for /f %%a in ('cscript /nologo "%temp%\%~n0.vbs"') do set "result=%%a"
del "%temp%\%~n0.vbs"
set "YYYY=%result:~0,4%"
set "MM=%result:~4,2%"
set "DD=%result:~6,2%"
set "data=%yyyy%-%mm%-%dd%"
echo Yesterday was "%data%"
pause


文章關鍵詞
bat
備份
遠程
萬企互聯 咸陽網站建設 萬企微信 IDC主機測評 域名轉發(fā)系統(tǒng) IP地址查詢 萬企工具 超越彼岸BEYOND 六佰號MSDN系統(tǒng) TOP圖標庫 六百號技術