- Windows script file name
- WSH. Примеры. Операции с файлами.
- Проверка наличия файла
- Создать файл
- Создать временный файл
- Читать файл
- Писать в файл
- Удалить файл
- Копировать
- Переместить
- Получение сведений о файле
- How to Create Filename with Date Time in Windows Batch Script
- Get Date & Time in Batch Script
- A Sample Batch Script with Date & Time
- Windows script file name
- Объект WScript
- Объект WScript. Создание объекта.
- Объект WScript. Свойство Timeout.
- Объект WScript. Свойство Name.
- Объект WScript. Свойство FullName.
- Объект WScript. Свойство Path.
- Объект WScript. Свойство Version.
- Объект WScript. Свойство BuildVersion.
- Объект WScript. Свойство ScriptName.
- Объект WScript. Свойство ScriptFullName.
- Объект WScript. Свойство StdIn.
- Объект WScript. Свойство StdOut.
- Объект WScript. Свойство StdErr.
- Объект WScript. Свойство Arguments.
- Объект WScript. Свойство Interactive.
- Объект WScript. метод Sleep.
- Объект WScript. метод Quit.
- Объект WScript. метод Echo.
- Объект WScript. метод CreateObject.
- Объект WScript. метод ConnectObject.
- Объект WScript. метод DisconnectObject.
- Объект WScript. Объект WshArguments.
- Объект WshArguments. Создание объекта.
- Объект WScript. Свойство Item.
- Объект WScript. Свойство Length.
- Объект WScript. Свойство Named.
- Объект WScript. Свойство Unnamed.
- Объект WScript. Метод Count.
- Объект WScript. Метод ShowUsage.
- Windows script file name
- Методы объекта FSO для работы с файлами
- Свойства объекта File для работы с файлами
- Методы объекта File для работы с файлами
Windows script file name
WSH. Примеры. Операции с файлами.
Большинство приводимых здесь примеров уже присутствую в разделе Объект FileSystemObject. Однако в справочных целях для работы с файлами, как мне кажется, пользоваться этой страницей удобнее ввиду гораздо меньшего объема и сугубо практической группировки материала.
Проверка наличия файла
Создать файл
CreateTextFile(Filename, Overwrite, Unicode)
Назначение: создаёт новый текстовый файл и возвращает объект «TextStream», указывающий на него.
Параметры:
Filename — строка, имя файла.
Overwrite — необязательный, булево (число). Перезаписывать файл, если он существует (True), или нет (False). По умолчанию — False. Если указано False и файл существует — произойдёт ошибка.
Unicode — необязательный, булево (число). Файл в формате Unicode (True), или ASCII (False). По умолчанию — False.
Создать временный файл
GetSpecialFolder(Folderspec)
Назначение: возвращает объект «Folder» для некоторых специальных папок Windows.
Folderspec — число, определяет специальную папку. Возможные значения:
0 — Каталог Windows.
1 — Системный каталог библиотек и драйверов.
2 — Каталог временных файлов, путь к которому хранится в переменной среды «TMP».
Описание: если каталог не существует, произойдёт ошибка.
GetTempName()
Возвращает случайным образом сгенерированное имя файла, которое может быть использовано для создания временного файла.
Читать файл
Чтение текстового файла построчно
Чтение всего файла в строку
Писать в файл
write(String)
Назначение: записывает в файл указанную строку. Символы возврата каретки и новой строки в файл не записываются.
WriteLine(String)
Назначение: записывает в файл указанную строку. В файл записываются символы возврата каретки и новой строки.
Параметры:
String — необязательный, строка для записи в файл. Если опущен, в файл записывается пустая строка.
WriteBlankLines(Lines)
Назначение: записывает в файл указанное количество пустых строк (символы возврата каретки и новой строки).
Удалить файл
DeleteFile(Filespec,Force>)
Назначение: удаляет указанный файл.
Filespec — строка, путь к файлу. В последнем компоненте параметра можно использовать групповые символы «*» и «?».
Force — необязательный, булево (число). Определяет, удалять или нет файлы с атрибутом read-only. По умолчанию — False (не удалять).
Копировать
Переместить
Процесс перемещения прерывается после первой возникшей ошибки. Если перемещаемый файл уже существует или является папкой, возникнет ошибка.
Получение сведений о файле
Приведенный выше пример возвращает дату создания файла.
В следующем примере определяется дата последнего доступа к файлу
Определить дату последней модификации файла.
How to Create Filename with Date Time in Windows Batch Script
This tutorial will help you to create files and directories with the name of current date time on Windows system. For example, you are writing a script which creates backup regularly, Now you want to organize daily backups with the current date and time name, so it will be easier to identify, which folder containers backups of which date. Go through the tutorial and understand how you can accomplish this.
Get Date & Time in Batch Script
Windows takes the date in the format like Thu 11/02/2017. Now below 3 set of commands extract the date in YYYY format, month in MM format and date in DD format and stored in CUR_YYYY, CUR_MM, and CUR_DD variables correspondingly.
Next is to parse the time which is available in 11:20:56.39 (Hours, Minutes, Seconds, and Micro Seconds) format. Now extract the hours, minutes, seconds, and microseconds and store them in variables.
Now, you have variables having current date and time in variables. You can use and create any file name as per your requirements like:
If your current date time is Nov 02, 2017 15:41:36, then the above example will create a file in the current directory with name “access_20170306-143822.log”.
A Sample Batch Script with Date & Time
The complete windows batch script will look like below. To test this create a file test.bat with the following content. Save the file and execute the script.
You will see a directory is created with name 20171102-154136 and a file create in current directory with name access_20171102-154136.log (Filename will be according to current date and time and will change during your testing)
Windows script file name
Объект WScript
Свойства | |
---|---|
Timeout | Время в секундах, по истечении которого скрипт будет автоматически остановлен. |
Name | Наименование сервера сценариев. |
FullName | Полный путь к исполняемому файлу сервера сценариев. |
Path | Полный путь к каталогу исполняемого файла сервера сценариев |
Version | Версия сервера сценариев. |
BuildVersion | Номер сборки сервера сценариев. |
ScriptName | Имя запущенного файла скрипта. |
ScriptFullName | Полный путь к запущенному файлу скрипта. |
StdIn | Объект «TextStream», соответствующий стандартному входному потоку. |
StdOut | Объект «TextStream», соответствующий стандартному выходному потоку. |
StdErr | Объект «TextStream», соответствующий стандартному потоку ошибок. |
Arguments | Объект «WshArguments» имеет ряд свойств и методов, позволяющих обращаться к именным и безымянным параметрам. |
Interactive | Режим запуска скрипта — запрещён (False) или разрешён (True) диалог с пользователем. |
Методы | |
Sleep | Приостановка исполнения скрипта на указанное количество миллисекунд. |
Quit | Завершение исполнения скрипта с указанным кодом возврата. |
Echo | Вывод сообщения в окно MessageBox (если скрипт был запущен с помощью WScript.exe) или на консоль (если скрипт был запущен с помощью CScript.exe). |
CreateObject | Создает программный объект автоматизации. |
ConnectObject | Устанавливает соединение с объектом автоматизации для обработки его событий. |
DisconnectObject | Разрывает соединение с объектом автоматизации. |
Объект WScript. Создание объекта.
Тут совсем просто)). Объект WScript можно использовать в сценарии сразу, без его создания, т.к. его экземпляр создаётся сервером сценариев (CScript.exe или WScript.exe) автоматически.
Объект WScript. Свойство Timeout.
Время в секундах, по истечении которого скрипт будет автоматически остановлен.
Замечание: чтение и запись.
Следует отметить, что при запуске сценариев из командной строки есть параметр //T который ограничивает максимальное время работы скрипта. Подробнее о параметрах запуска скриптов смотрите здесь.
Если время исполнения скрипта превысит 5 секунд, он будет завершен.
Объект WScript. Свойство Name.
Наименование сервера сценариев.
В моем случае результат был Windows Script Host.
Объект WScript. Свойство FullName.
Полный путь к исполняемому файлу сервера сценариев.
В моем случае результат был c:\windows\system32\WScript.exe
Объект WScript. Свойство Path.
Полный путь к каталогу исполняемого файла сервера сценариев.
В моем случае результат был c:\windows\system32
Объект WScript. Свойство Version.
Версия сервера сценариев.
Замечание: только чтение.
Объект WScript. Свойство BuildVersion.
Номер сборки сервера сценариев.
Замечание: только чтение.
Объект WScript. Свойство ScriptName.
Имя запущенного файла скрипта.
Замечание: только чтение.
Объект WScript. Свойство ScriptFullName.
Полный путь и имя запущенного файла скрипта.
Замечание: только чтение.
Объект WScript. Свойство StdIn.
Возвращает объект «TextStream», соответствующий стандартному входному потоку.
Замечание: свойство доступно только если скрипт был запущен с помощью CScript.exe.
Объект WScript. Свойство StdOut.
Возвращает объект «TextStream», соответствующий стандартному выходному потоку.
Замечание: свойство доступно только если скрипт был запущен с помощью CScript.exe.
Объект WScript. Свойство StdErr.
Возвращает объект «TextStream», соответствующий стандартному потоку ошибок.
Замечание: свойство доступно только если скрипт был запущен с помощью CScript.exe.
В командном окне (cmd) введите CScript.exe tst2.vbs
где tst2.vbs — имя, под которым сохранили предыдущий пример. Стандартный поток ошибок будет выведен на экран, где вы и увидите сообщение.
Объект WScript. Свойство Arguments.
Возвращает объект «WshArguments», который имеет ряд свойств и методов, позволяющих обращаться к именным и безымянным параметрам. Более подробно работа с параметрами описана здесь.
Объект WScript. Свойство Interactive.
Режим запуска скрипта — запрещён (False) или разрешён (True) диалог с пользователем.
Это свойство позволяет определять в каком режиме был запущен скрипт ( //B — Пакетный режим или //I — Диалоговый режим. Подробнее о параметрах запуска скриптов смотрите здесь). Свойство позволяет так же переопределить этот режим.
Замечание: чтение и запись.
Объект WScript. метод Sleep.
Приостановка исполнения скрипта на указанное количество миллисекунд.
Объект WScript. метод Quit.
Завершение исполнения скрипта с указанным кодом возврата.
Параметры: ErrorCode — необязательный, число, код возврата приложения.
Объект WScript. метод Echo.
Вывод сообщения в окно MessageBox (если скрипт был запущен с помощью WScript.exe) или на консоль (если скрипт был запущен с помощью CScript.exe).
Если аргументы не заданы, будет выведена пустая строка. Перечисленные через запятую аргументы при выводе будут разделены пробелами. В случае использования CScript.exe вывод будет завершён символом новой строки
Объект WScript. метод CreateObject.
Синтаксис:
CreateObject(ProgID [,Prefix])
где ProgID — строка, программный идентификатор объекта (ProgID).
Prefix — необязательный, префикс функций-обработчиков событий
Объект WScript. метод ConnectObject.
Объект WScript. метод DisconnectObject.
Объект WScript. Объект WshArguments.
Как уже упоминалось, свойство Arguments возвращает объект WshArguments. Настало время рассмотреть этот объект. Сразу хотелось бы отметить, что практическая сторона вопроса — работа с объектом рассмотрена на другой странице этого проекта — WSH. Обработка аргументов.
Свойства | |
---|---|
Item | Возвращает значение n-ного элемента коллекции. |
Length | Возвращает значение количества элементов коллекции (аргументов). |
Named | Возвращает коллекцию именных (именованных) параметров. |
Unnamed | Возвращает коллекцию безымянных параметров. |
Методы | |
Count | В возвращает число элементов коллекции (количество аргументов). |
ShowUsage | Выводит информацию о запуске и назначении сценария (описание аргументов, пример запуска). |
Объект WshArguments. Создание объекта.
Объект WshArguments создается свойством Arguments.
Объект WScript. Свойство Item.
Синтаксис:
Item(Index)
где Index — номер элемента в коллекции.
Возвращаемое значение — элемент коллекции.
Только чтение.
Объект WScript. Свойство Length.
Синтаксис:
Length
Параметров нет.
Возвращаемое значение — число элементов коллекции (количество аргументов, переданных скрипту).
Только чтение.
Объект WScript. Свойство Named.
Синтаксис:
Named
Параметров нет.
Возвращаемое значение — коллекция именных (именованных) параметров, переданных скрипту).
Только чтение.
Объект WScript. Свойство Unnamed.
Синтаксис:
Length
Параметров нет.
Возвращаемое значение — коллекция безымянных (не именованных) параметров, переданных скрипту).
Только чтение.
Объект WScript. Метод Count.
Синтаксис:
Count
Параметров нет.
Возвращает число элементов коллекции (количество аргументов, переданных скрипту).
Только чтение.
Объект WScript. Метод ShowUsage.
Синтаксис:
ShowUsage
Параметров нет.
Если сценарий размещен в XML файле специального формата с расширением .wsf (Windows Script file) и в этом файле в разделе , присутствуют элементы , , то значения этих элементов будет выведено так же как и при запуске скрипта с параметром /?.
Только чтение.
Еще раз напоминаю, что примеры работы с аргументами рассмотрены на другой странице этого проекта — WSH. Обработка аргументов.
За более подробной информацией обращайтесь в MSDN. На момент написания страницы это было здесь.
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуетс¤ регистраци¤).
Windows script file name
В данной статье я расскажу про работу с файлами средствами VBS при помощи объекта FSO и File. В принципе все методы и свойства показанные здесь очень схожи с теми, что были в предыдущем уроке про работу с папками. Я бы даже сказал, что объект File — брат близнец объекта Folder. Данный урок будет полезен при создании VBS cтиллера для кражи паролей. Ну что, приступим.
Методы объекта FSO для работы с файлами
Опять напомню, что для работы нам понадобиться вызвать объект FileSystemObject. Без него наш сценарий VBS работать не будет.
CopyFile — копирует один или несколько файлов. Возможно использовать подстановочные знаки: “*” – любое количество символов и “?” – любой один символ.
Синтаксис: CopyFile(Source, Destination [, Overwrite])
- Source — путь к файлу который копируем.
- Destination — куда копируем.
- Overwrite — не обязательный параметр. Перезаписывать существующие файлы (True) или нет (False). По умолчанию True. Если копируемый файл в папке имеет атрибут Read-Only, то возникает ошибка.
MoveFile — перемещает один или несколько фалов. Возможно использовать подстановочные символы. Если перемещаемый файл уже существует или является файлом в Destination, то выдаст ошибку.
Синтаксис: MoveFile(Source, Destination)
DeleteFile — Удаляет один или несколько файлов. Можно использовать подстановочные знаки.
Синтаксис: DeleteFile(Filespec [, Force])
- Filespec — Путь к файлу.
- Force — Не обязательный параметр. Удалять файлы с атрибутом read-only (True) или нет (False) . По умолчанию False.
А теперь наслаждаемся примером:
GetBaseName — Вернёт имя указанного файла без расширения.
GetExtensionName — Возвращает расширение указанного файла.
GetFileName — Вернёт имя файла вместе с его расширение.
GetParentFolderName — Вернёт путь к указанному файлу.
FileExists — Проверяет наличие файла. Вернёт True если он есть и False в противном случае.
GetTempName — Генерирует случайное имя файла, которое можно будет использовать для создания временных файлов.
GetFileVersion — Возвращает версию исполняемого файла.
GetFile — Вернёт объект «File» из указанного пути.
На этом непосредственно с FSO мы закончили и теперь давайте перейдём к объекту «File»
Свойства объекта File для работы с файлами
Attributes — Вернёт атрибуты (набор флагов) файла.
Пример смотрите в статье «Урок VBScript №12: Работа с папками (FSO)» — Всё аналогично, Но вместо «GetFolder» используем «GetFile».
DateCreated — Вернёт дату создания файла
DateLastAccessed — Возвращает дату последнего доступа к файлу.
DateLastModified — Вернёт дату последней модификации (Редактирования) файла.
Drive — Название диска (объект «Drive») на котором расположен файл.
Name — Вернёт имя файла
ParentFolder — Вернёт объект «Folder» родительского каталога.
Path — Вернёт полный путь к файлу.
ShortName — Возвращает короткое имя файла в формате 8.3
ShortPath — Вернёт короткий путь к фалу в формате 8.3
Size — Вернёт размер файла.
Type — Вернёт тип файла.
Методы объекта File для работы с файлами
Copy — копирует файл в указанное место. Так же можно изменять название файла.
Синтаксис: Copy(Destination [, Overwrit])
- Destination — Путь куда сохранять.
- Overwrit — Необязательный параметр. Число. Заменять файл если он существует (True) или нет (False)
Move — Перемещает файл в указанное место. Так же можно изменять название файла.
Delete — Удаляет указанный файл.
Имеет один не обязательный параметр. Число. Удалять файл если он имеет атрибут только для чтения (Read Only) — True; нет — False.
Прошу прощения за этот вялый пример, но мне было лень придумывать что то, так как и так всё понятно.
На этом я заканчиваю тему про работу с папками (FSO). Впереди ещё много нового о программирование VBS. Удачи!