Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


ia_del@vk, пакетные файлы для сего не очень годятся. Я буквально на днях приводил коллеге blackeangel гипотетический пример реализации на WSH, но по другому поводу. В Вашем случае сие может выглядеть так (с добавлением чтения из файла):
Скрытый текст
Код: Выделить весь код
Option Explicit

Dim strSourceFile

Dim objFSO

Dim strContent
Dim i
Dim strSymbol
Dim strKey


If WScript.Arguments.Count = 1 Then
	strSourceFile = WScript.Arguments.Item(0)
	
	Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
	
	If objFSO.FileExists(strSourceFile) Then
		With objFSO.OpenTextFile(strSourceFile)
			strContent = Replace(.ReadAll(), vbCrLf, "")
			.Close
		End With
		
		With WScript.CreateObject("Scripting.Dictionary")
			For i = 1 To Len(strContent)
				strSymbol = Mid(strContent, i, 1)
				
				If Not .Exists(strSymbol) Then
					.Add strSymbol, 1
				Else
					.Item(strSymbol) = .Item(strSymbol) + 1
				End If
			Next
			
			WScript.Echo "Symbol", vbTab, "Count"
			WScript.Echo "======", vbTab, "====="
			
			For Each strKey In .Keys
				WScript.Echo strKey, vbTab, .Item(strKey)
			Next
			
			.RemoveAll
		End With
	Else
		WScript.Echo "Can't find source file [" & strSourceFile & "]."
		WScript.Quit 2
	End If
	
	Set objFSO = Nothing
Else
	WScript.Echo "Usage: cscript.exe //nologo """ & WScript.ScriptName & """ <Source file>"
	WScript.Quit 1
End If

WScript.Quit 0

Путь к исходному файлу задаётся параметром скрипта. Символы конца строки «0x0D, 0x0A» из подсчёта убраны.
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:32, 15-10-2017 | #2