Показать полную графическую версию : Очиста содержимого файла
Здравствуйте.
Нужна помощь в написании скрипта на vbs который будет очищать содержимое файла, например .txt
alexhd, пробуйте:
Option Explicit
Const ForWriting = 2
Dim strFile
strFile = "E:\Песочница\0373\0001.txt"
With WScript.CreateObject("Scripting.FileSystemObject")
If .FileExists(strFile) Then
With .OpenTextFile(strFile, ForWriting)
.Close
End With
Else
WScript.Echo "File [" & strFile & "] not found."
WScript.Quit 1
End If
End With
WScript.Quit 0
Iska, спасибо, то что надо!
Подскажите как быть если нужно очищать два и более файлов и как в скрипте правильно указать путь к профилю пользователя, если указать "%userprofile%\Песочница\0373\0001.txt" то так не отрабатывает?
как в скрипте правильно указать путь к профилю пользователя, »
Например:
strFile = WScript.CreateObject("WScript.Shell").ExpandEnvironmentStrings("%UserProfile%\0001.txt")
Подскажите как быть если нужно очищать два и более файлов »
Пробуйте (не проверялось):
Option Explicit
Const ForWriting = 2
Dim arrFiles
Dim strFile
Dim objWshShell
arrFiles = Array("E:\Песочница\0373\0001.txt", "E:\Песочница\0373\0002.txt", "%UserProfile%\0001.txt")
Set objWshShell = WScript.CreateObject("WScript.Shell")
With WScript.CreateObject("Scripting.FileSystemObject")
For Each strFile In arrFiles
strFile = objWshShell.ExpandEnvironmentStrings(strFile)
If .FileExists(strFile) Then
With .OpenTextFile(strFile, ForWriting)
.Close
End With
Else
WScript.Echo "File [" & strFile & "] not found."
End If
Next
End With
Set objWshShell = Nothing
WScript.Quit 0
Iska, отрабатывает так как надо. Еще осталась один нерешенный вопрос для меня-как объединить эту часть кода с другой частью которая выполняет иную задачу, нужно получить на выходе один скрипт вместо двух?
как объединить эту часть кода с другой частью которая выполняет иную задачу, нужно получить на выходе один скрипт вместо двух? »
Как объединить — зависит от кода «другой части».
Нужно добавить в начало к скрипту во вложении
Используйте два скрипта. Не вижу смысла что-то делать, когда первой же строкой идёт «On Error Resume Next».
Можно ли тогда использовать какой-то батник или скрипт который будет запускать эти два скрипта по очереди?
Откуда Вы его хотите запускать?
Например, из сетевой шары.
@echo off
cscript.exe //nologo "\\Server\Share\Script1.vbs"
cscript.exe //nologo "\\Server\Share\Script2.vbs"
Рекомендую также на всякий случай разрешить использование UNC-путей в качестве текущего каталога согласно: Cmd.exe does not support UNC names as the current directory (http://support.microsoft.com/kb/156276/en-us).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.