Power shell

#◆注意点
#/mirオプションを付けているので、同期元で削除したファイルは同期先でも削除されます
#最初は適当なディレクトリでテストしてください。
#または/mirオプションを除外して実行してください。


##変数定義##
#ログファイルに挿入する日付
$now = $(get-date).tostring("yyMMdd_HHmmss")
#動機元
$original = "C:\Users\hoge\Desktop\"
#同期先
$backup = "\\NAS_server\hoge\backup\"
#ログ保存先
$log = "\\NAS_server\huruhuru\backup\log\"

#ファイル同期(差分コピー) & ログファイル作成
robocopy "$original" "$backup" /mir /z /np /xo /r:3 /w:3 >> $log'backup_'$now'.log'

echo ""
echo " 只今同期中・・・"
echo ""
echo " 同期元:$original"
echo ""
echo " 同期先:$backup"
echo ""
echo " ログファイル名:backup_$now.log"
echo ""

# 14日以上経過したログファイルを削除
#("$log"配下の全ファイルが削除対象になってるのでログファイル以外置かない事)
$a = Get-ChildItem "$log"
foreach($x in $a)  
    {  
        $y = ((Get-Date) - $x.LastWriteTime).Days
        if ($y -gt 14 -and $x.PsISContainer -ne $True) 
            {$x.Delete()}  
    } 

echo ""
echo " 同 期 完 了 "
echo ""

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-05-03 (土) 15:37:45 (2021d)