VBScript 重命名文件夹中具有特定前缀的文件
VBScript to Rename File with Specific Prefix in Folder
我已经成功创建了一个 VBScript,当它是文件夹中唯一的文件时,它可以根据需要重命名文件。我不知道如何让脚本搜索最近的文件。
Option Explicit
Dim fso, folder, file, tmFile
Dim folderName
folderName = "\pcc\Int\PC\Inbox\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderName)
Set tmFile = Nothing
For each file In folder.Files
If (tmFile is Nothing) Then
Set tmFile = file
Exit For
End IF
Next
If InStr(tmfile.name, "TM") Then
TmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
End if
以上脚本正确重命名了文件。
这里有一些修改我试图通过文件夹中的所有文件来搜索具有前缀 TM 的文件。这将始终是唯一带有 TM 前缀的文件。
For Each InStr(tmFile.name, "TM") Then
tmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
Exit for
和
If tmFile.fileexists(tmFile.name, "TM") Then
tmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
End if
您的 instr()
已经很接近了,只是您需要将该测试放入您已经存在的 For
循环中:
Option Explicit
Dim fso, folder, file, tmFile
Dim folderName
folderName = "\pcc\Int\PC\Inbox\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderName)
For each file In folder.Files
If instr(file, "TM") > 0 THEN
file.name = replace(file.name, ".txt", "A.txt")
End IF
Next
我删除了 tmfile
变量,因为这里根本不需要它。
我已经成功创建了一个 VBScript,当它是文件夹中唯一的文件时,它可以根据需要重命名文件。我不知道如何让脚本搜索最近的文件。
Option Explicit
Dim fso, folder, file, tmFile
Dim folderName
folderName = "\pcc\Int\PC\Inbox\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderName)
Set tmFile = Nothing
For each file In folder.Files
If (tmFile is Nothing) Then
Set tmFile = file
Exit For
End IF
Next
If InStr(tmfile.name, "TM") Then
TmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
End if
以上脚本正确重命名了文件。
这里有一些修改我试图通过文件夹中的所有文件来搜索具有前缀 TM 的文件。这将始终是唯一带有 TM 前缀的文件。
For Each InStr(tmFile.name, "TM") Then
tmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
Exit for
和
If tmFile.fileexists(tmFile.name, "TM") Then
tmFile.Name = Replace(tmFile.Name, ".txt", "A.txt")
End if
您的 instr()
已经很接近了,只是您需要将该测试放入您已经存在的 For
循环中:
Option Explicit
Dim fso, folder, file, tmFile
Dim folderName
folderName = "\pcc\Int\PC\Inbox\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderName)
For each file In folder.Files
If instr(file, "TM") > 0 THEN
file.name = replace(file.name, ".txt", "A.txt")
End IF
Next
我删除了 tmfile
变量,因为这里根本不需要它。