Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Удалить в папке файлы с одинаковым название но разным расширением (http://forum.oszone.net/showthread.php?t=310859)

929151 27-01-2016 16:46 2599695

Удалить в папке файлы с одинаковым название но разным расширением
 
есть файлы:

имя_файла.eps
имя_файла.jpg

нужно чтобы скрипт удалял jpg файл а eps оставлял.

greg zakharov 28-01-2016 09:25 2599938

Хотя я задокументировал сценарий, все же поясню. Первый параметр, передаваемый сценарию - папка, в которой находятся файлы, второй - повторяющееся имя файлов, третий - расширение того файла, которое не должно быть удалено.
Код:

Function DeleteReplicants(dir, name, ext)
  With CreateObject("Scripting.FileSystemObject")
    Dim objFolder : Set objFolder = .GetFolder(.GetAbsolutePathName(dir))
   
    For Each objFile In objFolder.Files
      Dim objArray : objArray = Split(.GetFileName(objFile), ".", -1, 1)
      If objArray(0) = name And objArray(1) <> ext Then
        WScript.Echo objFile
        .DeleteFile(objFile)
      End If
    Next
   
    Set objFolder = Nothing
  End With
End Function

If WScript.Arguments.Count <> 3 Then
  WScript.Echo "Usage: " & WScript.ScriptName & " <path> <name> <ext>"
  WScript.Echo "  path - source place for the files to process"
  WScript.Echo "  name - a base name which repeats twice or more times"
  WScript.Echo "  ext  - extension of that file which shouldn" & Chr(39) & "t be deleted"
  WScript.Quit(1)
End If

Dim args : Set args = WScript.Arguments : DeleteReplicants args(0), args(1), args(2)
Set args = Nothing


929151 29-01-2016 13:23 2600381

greg zakharov, Спасибо
вот только у меня файлов много и имена разные
файл_183998951.jpg
файл_183998951.eps
файл_172816322.jpg
файл_172816322.eps
файл_172702487.jpg
файл_172702487.eps
файл_189977945.eps
файл_185262920.jpg
файл_185262920.eps

greg zakharov 29-01-2016 13:54 2600403

Так переправьте пример, чтобы оставлял только файлы с расширением .esp


Время: 21:24.

Время: 21:24.
© OSzone.net 2001-