Электростальский форум
Hi-Tech => Компьютеры, периферия, мультимедиа и ПО => Тема начата: Gepard от 17.11.07, 17:53:21
-
Ну, вопрос уместился в заголовок. По Яндексу толком ничего не смог найти. Подскажите, пожалуйста, название.
[[kiss2]]
-
dir > filename.txt
-
Спасибо ))
получилось.
А на будущее - есть что-нибудь с более гламурным интерфейсом? Хотя бы чтоб помимо названий папок можно было закинуть и названия файлов в этих папках, которые лежат в нужной мне папке. Или есть команда и для этого? То есть чтоб список был папок и подпапок.
Аааа, в этом способе обнаружился косяк. Русскоязычные папки оказались иероглифами в текстовом. Как лечить?
-
dir > filename.txt
совершенно точно.
если нужны только имена файлов без подробностей - dir /b
у dir еще много ключей есть - dir /? для справки.
dir > filename.txt - каждый раз перезаписыват filename.txt
если вдруг понадобится вместо этого дописать в конец файла, место перезаписи, то
dir >> filename.txt
-
> Как лечить?
все там нормально. кодировка досовская. штирлицем открой, или любой прогой по-умнее блокнота. хоть вордом.
можно было и догадаться =)
если файлов не очень много, я обычно копирую текст прямо из окна cmd
-
Тотал, плагины, Directory Lister. <-Есть у меня.
-
ЛЕО, огромное спасибо!!!!!
не догадался ))
mga, спасибо )
-
> Аааа, в этом способе обнаружился косяк. Русскоязычные папки оказались иероглифами в текстовом. Как лечить?
сhcp 1251
-
> Аааа, в этом способе обнаружился косяк. Русскоязычные папки оказались иероглифами в текстовом. Как лечить?
сhcp 1251
нда, только в cmd теперь русский текст нечитаем =)
а чтоб обратно какой код?
-
> Аааа, в этом способе обнаружился косяк. Русскоязычные папки оказались иероглифами в текстовом. Как лечить?
сhcp 1251
нда, только в cmd теперь русский текст нечитаем =)
а чтоб обратно какой код?
chcp 866
-
нда, только в cmd теперь русский текст нечитаем =)
смени точечные шрифты на люцида консоле =) и будед щастие
-
нда, только в cmd теперь русский текст нечитаем =)
смени точечные шрифты на люцида консоле =) и будед щастие
гы)))
аш глаза с непривычки режет ))
таким макаром можно было посоветовать автору в блокноте шрифт Terminal поставить =)
правда тогда только в блокноте и можно будет читать ))
-
Огромное спасибо!!!!
p.s.: а чтоб не выводились размеры файлов, нужно убрать следующие буквы: & "Size"?
-
Привожу листинг файла ListFoldFiles.vbs
Он очень большой, но думаю должен поместиться в сообщении
'*******************************************************************
' File: ListSubFolder.vbs (VBScript)
' Author: LEND
' Листинг всех вложенных директорий(подкатлогов) указанной
' директории(каталога), их файлов и вывод в NOTEPAD
'*******************************************************************
Option Explicit
'Объявляем переменные
'Const Title = "Lend"
Dim oIE
Dim path
Dim ready
Dim WshShell
Dim strPathHtml
Dim objDocument
Dim BisQuit
Dim flag1,flag2,flag3
Dim FSO
Dim F
Dim SFold
Dim SubFolders
Dim Folder
Dim s
Dim K
Dim t
Dim m
Dim wsh
Dim KolFiles
Dim VsegoKatalogov
Dim VsegoFiles
Dim VsegoSize
Dim VsegoFilesKat
Dim oFolder
Dim oFile
Dim oFiles
Dim VsegoSizeMb
Dim VsegoFilesSize
Dim fOut
Dim theNotepad
Const ForWriting = 2
'++++++++++++++++++++++++ Процедуры ++++++++++++++++++++++
'================== Процедура Показа Explorer формы =========
Sub PokazForm
Set objDocument=oIE.Document
objDocument.all.KnopOk.Disabled=False
objDocument.all.KnopVix.Disabled=False
Set objDocument.all.KnopOk.onClick=GetRef("Okda")
Set objDocument.all.KnopVix.onClick=GetRef("Vixda")
End Sub
'================== Процедура вывода данных формы =================
Sub Okda
Sfold=oIE.Document.ValidForm.fDirKat.Value
flag1=oIE.Document.ValidForm.fcheck1.Checked
flag2=oIE.Document.ValidForm.fcheck2.Checked
flag3=oIE.Document.ValidForm.fcheck3.Checked
'Проверка каталога
if FSO.FolderExists(Sfold)=False then
if Sfold="" then
msgBox "Вы ничего не ввели"
else
msgBox "Директория(каталог)" & VbCrLf &_
Sfold & chr(13) & "Не существует"
end if
else
Raschet 'Процедура расчета
end if
End Sub
'===================== Расчет ========================================
Sub Raschet
'Создаем объект FileSystemObject
s = "Каталог " & SFold & VbCrLf
s = s & "Подкаталоги:" & VbCrLf
'Создаем объект Folder для любого каталога
Set F=FSO.GetFolder(SFold)
'Создаем коллекцию подкаталогов любого каталога
Set SubFolders = F.SubFolders
m="Просмотр каталога " & SFold & " и его подкаталогов и файлов" & VbCrLf
VsegoFiles=0
VsegoFilesKat=0
VsegoSize=0
ShowFil (SFold)
m=m & vbCrLf
m=m & "========= Подкаталоги и файлы =========" & vbCrLf
'Цикл по всем каталогам и подкаталогам
VsegoKatalogov=0
VsegoKatalogov=VsegoKatalogov+SubFolders.Count
For Each Folder In SubFolders
'Добавляем строку с именем подкаталога
m = m & Folder & VbCrLf
s = Folder
ShowFil (s) 'Процедура показа файлов
m=m & vbCrLf
Kat (s) 'Процедура показа каталогов
Next
m=m & VbCrLf
m=m & "Всего вложенных каталогов в каталоге " & SFold & VbCrLf
m=m & VsegoKatalogov & VbCrLf
m=m & "Всего вложенных файлов в каталоге " & SFold & VbCrLf
m=m & VsegoFiles & VbCrLf
if flag3=true then 'Всего размер указанного каталога
m=m & "Общий размер вложенных файлов в БАЙТАХ в каталоге " & SFold & VbCrLf
m=m & VsegoSize & VbCrLf
m=m & "Общий размер вложенных файлов в Mb в каталоге " & SFold & VbCrLf
VsegoSizeMb = VsegoSize/1048576
m=m & VsegoSizeMb & VbCrLf
end if
' Выводим файлы директории с помощью TextOut
' Файл запишется в корневую директорию C:\Temp\ListKatFiles.txt - Выбери сам куда
TextOut m,"C:\Temp\ListKatFiles.txt"
'Создаем объект WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
'Открываем созданный файл в Блокноте и выводим полученные данные на экран
Set theNotepad = WshShell.Exec("notepad " & "C:\Temp\ListKatFiles.txt" )
End Sub
'================== Выход из формы ===================================
Sub Vixda
oIE.Quit
End Sub
'============ Функция просмотра всех подкаталогов ============
Sub Kat (s)
Set K=FSO.GetFolder(s)
'Создаем коллекцию подкаталогов
Set SubFolders = K.SubFolders
'Цикл по всем подкаталогам
VsegoKatalogov=VsegoKatalogov+SubFolders.Count
For Each Folder In SubFolders
'Добавляем строку с именем подкаталога
m = m & Folder & VbCrLf
t=Folder
ShowFil (t)
m=m & vbCrLf
Kat(t)
Next
End Sub
'=============== Функция для записи информации в файл ==========
Sub TextOut (m, File)
' Открываем выходной файл для записи
Set FOut = FSO.OpenTextFile(File,ForWriting,true)
' Записываем текстовую строку в файл
FOut.WriteLine m
' Закрываем выходной файл
FOut.Close
End Sub
'================ Функция показа файлов =======================
Sub ShowFil (t)
Set wsh = WScript.CreateObject("WScript.Shell")
Set oFolder = fso.GetFolder(wsh.ExpandEnvironmentStrings(t))
'm=m & vbCrLf
'm=m & "Файлы каталога" & vbCrLf
'm = m & "Name" & vbTab & vbTab & "Size" & vbCrLf
Set oFiles = oFolder.Files ' Вывод файлов.
kolFiles=oFiles.count 'Кол. файлов в директории
VsegoFiles=VsegoFiles+KolFiles
m=m & "Всего файлов: " & kolFiles & vbCrLf
VsegoFilesSize=0
For Each oFile In oFiles ' Все файлы
m = m & oFile.Name & vbTab
if flag1=true then
m = m & FormatNumber(oFile.Size, 0) & vbTab
end if
m = m & vbCrLf
VsegoSize=VsegoSize+FormatNumber(oFile.Size, 0)
VsegoFilesSize=VsegoFilesSize+FormatNumber(oFile.Size, 0)
Next
if flag2=true then ' Показ размера каталога
m=m & "Всего в этом каталоге " & VsegoFilesSize & " Bt. или " &_
FormatNumber((VsegoFilesSize/1048576),6) & " Mb." & vbCrLf
end if
'm=m & "Всего файлов: " & kolFiles & vbCrLf
End Sub
'==============================================================
'+++++++++++++++++++++ Конец процедур +++++++++++++++++++++++++
'***************** Основное тело программы ************
Set WshShell=WScript.CreateObject("WScript.Shell")
Set oIE = WScript.CreateObject("InternetExplorer.Application", "IE_")
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
oIE.Left = 10
oIE.Top = 10
oIE.Height = 320
oIE.Width = 530
oIE.MenuBar = 0
oIE.ToolBar = 0
oIE.StatusBar = 0
oIE.Resizable = 0
strPathHtml=WshShell.CurrentDirectory & "\" & "Forma.htm"
oIE.navigate strPathHtml 'Вызов формы
oIE.Visible = 1 ' Показать Form'у
Do While (oIE.Busy)
WScript.Sleep 200 ' Задерка 200 milliseconds - вывода Form'ы
Loop
PokazForm ' Основная Процедура
BisQuit=false
While not BisQuit
WScript.Sleep 200 ' Задержка 200 milliseconds.
Wend
'WScript.Quit
'******************* Конец программы *****************
Эти два файла ВЫ можете перенести в любую директорию(каталог). Они должны быть вместе.
И тогда Вы можете поэксперементировать. Вы также можете их запускать в большом количество экземпляров, но только непереполните память.
Вообщем Я их выложил в 1-ом сообщении. Они оба будут с расширением txt
Потом замените:
Forma.txt на Forma.htm
ListSubFolder.txt на ListSubFolder.vbs
И еще можно модернизировать программу.
Если ВЫ разбираетесь - пробуйте.
Можно также эти 2 файла записать в 1 файл с расширением XML , но это надо пробовать.
Успеха
LEND
-
Наконец то починили "СЕТЬ".
Окончательное завершение программ.
Все, упрятал форму в VBS и написал еще 1 программу под HTA.Теперь программа ShowFoldFiles.vbs сама создает форму Forma.htm и из нее можно работать. Программа удаляет эту форму после своего завершения и не оставляет WScript.exe в процессах. Так же закодировал ShowFoldFiles.vbs в ShowFoldFiles.vbe, чтобы ее не правили.
Вообщем в кратце.
Выкладываю 3 программы
1 ListFoldFiles1.txt - это ListFoldFiles1.vbs
2 ListFoldFiles2.txt - это ListFoldFiles2.vbe
3 ShowFoldFiles3.txt - это ShowFoldFiles3.hta
Переправьте только расширения и все. Все запускаются автономно и прямо из системы.
Такого показателя оператора GetFolder (GetDir и похожие) как "ДИАЛОГ-объекта" в VBS и JS (какие есть в других языках программирования) не нашел и потому в указанных программах исследуюмую директорию (каталог,папка) надо набирать вручную.
Под hta и htm тоже не нашел ДИАЛОГА под директории (каталог,папка). В конструкция <input name="" type="" size=""> можно только указать type="file" которая может показать ДИАЛОГ ВЫБОРА файлов.
Опять же может плохо искал - но не нашел. Выйти из положения можно - скопируйте нужную ВАМ директорию (каталог, папку) из свойств самой директории (каталога,папки). В большинстве случаев это возможно. Затем примените "вставку" где надо набирать директорию (каталог,папку) уже в запущенной программе ну например в ShowFoldFiles3.hta
И еще:
- При запуске ListFoldFiles1.vbs и ListFoldFiles2.vbe в список процессов добавляются еще 3 процесса.
Это IEXPLORER.EXE, WScript.exe и NOTEPAD.EXE
- При запуске ShowFoldFiles3.hta в список процессов добавляются только 2 процесса.
Это msta.exe и NOTEPAD.EXE
ВЫбирайте что ВАМ удобно, но мне думается что скрипты VBS И JS работают быстрее.
Gepard
Ну вот ВАМ и программа с почти гламмурным интерфейсом.
Ну наверно на этом все.
Программу можно улучшать - пробуйте.
-
Нашел все таки функцию ПОКАЗА ДИРЕКТОРИЙ (КАТАЛОГОВ и ПАПОК)
Файлы упрятал в архив List.rar
Получилась программа с наглядным интерфейсом.
Рисунок ris.jpg
-
Офигенно!!!!!
Огромнейшее спасибо! Буду пользоваться!!!!!! Думаю, и другим тоже будет полезно!
-
Ребята, подскажите, где можно скачать такую программу? Очень надо!!!
-
Ребята, подскажите, где можно скачать такую программу? Очень надо!!!
:bj:
а темку с начала прочитать религия не позволяет?
-
Позволяет, только че-то я не могу скачать. М.б. я совсем тупой...
-
http://wincmd.ru/plugring/totalcmd.html
-
Позволяет, только че-то я не могу скачать. М.б. я совсем тупой...
безумовно так і є
ну, чего, чего надо скачивать, когда всё украд УЖЕ сделано для тебя?
итак, жми ПУСК -> Выполнить
в ком. строке набери cmd - окроется окно консоли
в этом окне набери dir /?
далее - по хелпу делай
-
http://yandex.ru/yandsearch?text=dir2text&from=fx3&clid=46510&lr=20523
-
Господа, все это просто замечательно, Яндексом я умею пользоваться, с Тотал Командером тоже знаком ужо несколько лет. Дело в том, что я сейчас пишу скрипт, где хочу использовать объект Set oIE = WScript.CreateObject("InternetExplorer.Application", "IE_") мне нужен пример использования, который я хочу посмотреть в архиве List.rar. Но я его никак не могу скачать(((((((
-
Господа, все это просто замечательно, Яндексом я умею пользоваться, с Тотал Командером тоже знаком ужо несколько лет. Дело в том, что я сейчас пишу скрипт, где хочу использовать объект Set oIE = WScript.CreateObject("InternetExplorer.Application", "IE_") мне нужен пример использования, который я хочу посмотреть в архиве List.rar. Но я его никак не могу скачать(((((((
тоды - ОЙ!
*улез*
-
Напишите автору топика или LENDу в личку. Может у них что-то сохранилось.