VBS/ファイル置き換えスクリプト
の編集
https://sundays.ddns.net/?VBS/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) ***リモートPCにファイルをコピーしてゆくスクリプト。更新日付を監視しファイルが更新されたことを確認ログを出力する。 [#la46397b] '"""""""""""""""""""""""""""""""""" 'DomainAdminの権限で実行してください 'ファイルコピーを行います。 'SouceFileの値を確認してください。 '"""""""""""""""""""""""""""""""""" 'エラーが出た場合、飛ばして次の行に行く On Error Resume Next Set objFSO = CreateObject("Scripting.FileSystemObject") 'IPアドレスかコンピュータ名を1行ずつ記述したファイルを開く Set objTargetFile = objFSO.OpenTextFile(".\Addresses.txt") 'ログファイル指定(8=追記,true=ファイルが存在しない場合新規作成) Set objLogFile = objFSO.OpenTextFile(".\WORK.LOG", 8, True) 'クライアントPCに展開するファイルのもとファイル SouceFile = "C:\work\Agent_Addresses.txt" 'コピー先ですでに存在した場合上書きコピーするか否か '(TRUE=上書き,FALSE=上書きしない) Const OverwriteExisting = True '"""""""""""""""""""""""""""""""""" 'objTargetFile"で指定されたIPを1行ずつ実行し最後まで繰り返す 'strRemoteFolder = コピー先フォルダ 'FileSpec = 置き換えファイルフルパス '"""""""""""""""""""""""""""""""""" Do Until objTargetFile.AtEndOfStream strComputer = objTargetFile.ReadLine 'strRemoteFolderは最後に\をつけてください strRemoteFolder = "\\" & strComputer & "\c$\work\TEST_2\" Filename = "Agent_Addresses.txt" FileFullPass = strRemoteFolder & Filename '""""""""""""""""""""""""""""""""" '置き換え前の情報を取得 '""""""""""""""""""""""""""""""""" Dim a, b If objFSO.FileExists(FileFullPass) Then Set a = objFSO.GetFile(FileFullPass) b = a.DateLastModified Else b = "File Exist" End If '""""""""""""""""""""""""""""""""" 'ファイルコピー実行 ' '"""""""""""""""""""""""""""""""""" objFSO.CopyFile SouceFile, FileFullPass, OverwriteExisting '""""""""""""""""""""""""""""""""" '置き換え後の情報を取得 '""""""""""""""""""""""""""""""""" 'ファイルが存在すれば If objFSO.FileExists(FileFullPass) Then 'ファイル更新日付を表示(置き換わったことを確認) Dim c, d Set c = objFSO.GetFile(FileFullPass) d = c.DateLastModified Else d = "File Exist" End If '"""""""""""""""""""""""""""""""""" 'ログ書き込み '"""""""""""""""""""""""""""""""""" objLogFile.WriteLine (strComputer & " " & b & " → " & d) Loop 'ここまで #navi(../)
タイムスタンプを変更しない
#navi(../) ***リモートPCにファイルをコピーしてゆくスクリプト。更新日付を監視しファイルが更新されたことを確認ログを出力する。 [#la46397b] '"""""""""""""""""""""""""""""""""" 'DomainAdminの権限で実行してください 'ファイルコピーを行います。 'SouceFileの値を確認してください。 '"""""""""""""""""""""""""""""""""" 'エラーが出た場合、飛ばして次の行に行く On Error Resume Next Set objFSO = CreateObject("Scripting.FileSystemObject") 'IPアドレスかコンピュータ名を1行ずつ記述したファイルを開く Set objTargetFile = objFSO.OpenTextFile(".\Addresses.txt") 'ログファイル指定(8=追記,true=ファイルが存在しない場合新規作成) Set objLogFile = objFSO.OpenTextFile(".\WORK.LOG", 8, True) 'クライアントPCに展開するファイルのもとファイル SouceFile = "C:\work\Agent_Addresses.txt" 'コピー先ですでに存在した場合上書きコピーするか否か '(TRUE=上書き,FALSE=上書きしない) Const OverwriteExisting = True '"""""""""""""""""""""""""""""""""" 'objTargetFile"で指定されたIPを1行ずつ実行し最後まで繰り返す 'strRemoteFolder = コピー先フォルダ 'FileSpec = 置き換えファイルフルパス '"""""""""""""""""""""""""""""""""" Do Until objTargetFile.AtEndOfStream strComputer = objTargetFile.ReadLine 'strRemoteFolderは最後に\をつけてください strRemoteFolder = "\\" & strComputer & "\c$\work\TEST_2\" Filename = "Agent_Addresses.txt" FileFullPass = strRemoteFolder & Filename '""""""""""""""""""""""""""""""""" '置き換え前の情報を取得 '""""""""""""""""""""""""""""""""" Dim a, b If objFSO.FileExists(FileFullPass) Then Set a = objFSO.GetFile(FileFullPass) b = a.DateLastModified Else b = "File Exist" End If '""""""""""""""""""""""""""""""""" 'ファイルコピー実行 ' '"""""""""""""""""""""""""""""""""" objFSO.CopyFile SouceFile, FileFullPass, OverwriteExisting '""""""""""""""""""""""""""""""""" '置き換え後の情報を取得 '""""""""""""""""""""""""""""""""" 'ファイルが存在すれば If objFSO.FileExists(FileFullPass) Then 'ファイル更新日付を表示(置き換わったことを確認) Dim c, d Set c = objFSO.GetFile(FileFullPass) d = c.DateLastModified Else d = "File Exist" End If '"""""""""""""""""""""""""""""""""" 'ログ書き込み '"""""""""""""""""""""""""""""""""" objLogFile.WriteLine (strComputer & " " & b & " → " & d) Loop 'ここまで #navi(../)
テキスト整形のルールを表示する