「あるファイルのタイムスタンプを、別のファイルのタイムスタンプで更新したい」って時に、結構便利なんじゃないかな?ってスクリプトです。

touch.vbs

filetouch.vbs
'
' 第2引数以降のファイルのタイムスタンプを
' 第1引数のファイルのタイムスタンプで更新する。
'
' @authoer Jomora( kazuhiko@jomura.net http://jomura.net )
' @version 2010.07.18 初版作成


'**Start Encode**

Set objArgs = WScript.Arguments.Unnamed
If objArgs.Count < 2 Then
	WScript.Echo "2つ以上のファイルを指定してください。"
	WScript.Quit
End If

' main

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Shell.Application")

' タイムスタンプ取得
modifyDate = objFSO.GetFile(objArgs.Item(0)).DateLastModified

' タイムスタンプ設定
For i = 1 To objArgs.Count - 1
	Set objFile = objFSO.GetFile(objArgs.Item(i))
'	WScript.Echo "path:" & objFile.ParentFolder.Path & " name:" & objFile.Name
	Set shellFolder = objShell.NameSpace(objFile.ParentFolder.Path)
	Set shellFile = shellFolder.ParseName(objFile.Name)
	shellFile.ModifyDate  = modifyDate
Next

WScript.Quit

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS