2024年7月7日 星期日

藉由AI神器協助撰寫WSF腳本程式,按右鍵一鍵完成資料備份

情境:因為常有不同版次資料(或資料夾)需做備份💾,藉由AI神器協助撰寫一個備份程式,只要按滑鼠右鍵,一鍵完成資料備份至D:\Backup資料夾中。


Prompt提示詞下法如下:常需要保留每次不同版本資料,請寫成Windows Script Files腳本文檔,做備份處理 ,請以argc argv 方式讀取備份來源,備至d:\backup ,依來源檔案名稱做為備份目錄名稱,避免重覆(單一檔名重覆,加入流水號)且分類方便, 另外新增備份來源如為整個目錄,同樣也是備份至d:\backup 但目的資料夾,應同來源資料夾,如遇目的資料夾重覆,同樣加入流水號

 

說明:

💜將下面紫色腳本程式另存成Fbackup.WSF附加檔案類型,並且放置於  shell:sendto (Win+R | 鍵入 shell:sendto |Fbackup.wsf貼於此資料夾),不論是資料夾或者是檔案,按下滑鼠右鍵,選擇Fbackup.wsf 即可自動將您的資料備份至 D:\Backup 資料夾,🚨請記備定期將D:\Backup 另外離線備份至USB行動碟,防止勒索病毒加密 本地端電腦。

💜Argc Argv參數是省去輸入檔案最佳作法,直接將您所欲備份之檔名或資料夾名稱 自動讀入

💜系統第1次執行,可能會詢問您要用何程式開啟WSF檔,請用預設Windows VBscript執行即可。

💜參考上面Prompt提示詞,將它貼至AI神器,即可幫您生成備份程式,如您覺得太陽春,可以自行補提其它需求(:請再預先做壓縮處理後,再將該檔案進行備份)


相關查詢:
バックアップ  世代

 

Prompt提示詞活用案例:

簡化HTML樣式(Doc_2_HTML)

png、jpeg圖檔縮小活用案例


 <?xml version="1.0"?>

<job id="BackupJob">

  <script language="VBScript">

    <![CDATA[

    Option Explicit

    Dim objFSO, objArgs, strSource, strBackupRoot, strBackupDir, strDest, intCounter

 

    ' 初始化

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    Set objArgs = WScript.Arguments

    strBackupRoot = "d:\backup"

 

    ' 檢查備份傳遞參數

    If objArgs.Count = 0 Then

        WScript.Echo "請提供您要備份的檔案或資料夾之路徑。"

        WScript.Quit

    End If

 

    ' 處理每個參數

    For Each strSource In objArgs

        strBackupDir = strBackupRoot & "\" & objFSO.GetBaseName(strSource)

 

        ' 檢查目的資料夾是否已存在

        intCounter = 1

        Do While objFSO.FolderExists(strBackupDir & "_" & intCounter)

            intCounter = intCounter + 1

        Loop

        strBackupDir = strBackupDir & "_" & intCounter

 

        ' 創建目的資料夾(如果不存在)

        If Not objFSO.FolderExists(strBackupDir) Then

            objFSO.CreateFolder strBackupDir

        End If

 

        ' 備份檔案或資料夾

        If objFSO.FileExists(strSource) Then

            ' 修正 strDest 以包含完整路徑

            strDest = strBackupDir & "\" & objFSO.GetFileName(strSource)

            objFSO.CopyFile strSource, strDest

            WScript.Echo "檔案已備份至: " & strDest

        ElseIf objFSO.FolderExists(strSource) Then

            objFSO.CopyFolder strSource, strBackupDir

            WScript.Echo "資料夾已備份至: " & strBackupDir

        Else

            WScript.Echo "指定的檔案或資料夾不存在: " & strSource

        End If

    Next

    ]]>

  </script>

</job>