![[identity profile]](https://www.dreamwidth.org/img/silk/identity/openid.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
Дано - папка с большим кол-вом XML файлов.
Нужно каким-то образом получить весь список названий этих файлов и вставить в эксель. У меня получается только по одному названию перетаскивать. А как выделить названия всех файлов сразу?
И еще нужно, открывая эту папку, искать в файлах определенную инфу. Как это сделать? Если я cntr+F делаю, то поиск у меня запускается почему-то только по названиям файла. А нужная мне инфа - она не в названии файла, она в нем самом.
Помогите, please!
Нужно каким-то образом получить весь список названий этих файлов и вставить в эксель. У меня получается только по одному названию перетаскивать. А как выделить названия всех файлов сразу?
И еще нужно, открывая эту папку, искать в файлах определенную инфу. Как это сделать? Если я cntr+F делаю, то поиск у меня запускается почему-то только по названиям файла. А нужная мне инфа - она не в названии файла, она в нем самом.
Помогите, please!
no subject
Date: 2014-08-29 04:34 am (UTC)Поиск:
$ grep "инфа" -r папка_с_xml
Список названий:
$ ls -1
результат копировать через выделение мышкой и вставлять в Excel
no subject
Date: 2014-08-29 04:48 am (UTC)Забыла добавить - у меня 8-ка на компе и поиск по папкам я вообще не понимаю как включить. Я открываю программу, через которую смотрю папки и их содержимое, стандартная виндосовская программа. И вот там есть поиск. А такой как был на 7-ке через кнопку пуск, вот такой поиск я не знаю как на моем компе запустить.
no subject
Date: 2014-08-29 04:52 am (UTC)А искать в файлах под виндой могу посоветовать использовать какой-нибудь "коммандер". Не знаю, какие из них еще живы. (Total commander, Far, NC, etc)
no subject
Date: 2014-08-29 07:41 am (UTC)no subject
Date: 2014-08-29 04:37 am (UTC)Открыть блокнтом. Скопировать. Вставить в Excel.
no subject
Date: 2014-08-29 07:09 am (UTC)И уже все сразу в буфере обмена.
no subject
Date: 2014-08-29 07:31 am (UTC)no subject
Date: 2014-08-29 09:55 am (UTC)no subject
Date: 2014-08-29 04:37 am (UTC)grep
no subject
Date: 2014-08-29 04:51 am (UTC)На компе - 8-ка.
Где мне эти команды набирать?
no subject
Date: 2014-08-29 10:13 am (UTC)no subject
Date: 2014-08-29 04:43 am (UTC)Но лучше скажите конечную цель в экселе.
Это можно там сделать макросом: перебрать все файлы (или не все, а по маске) в папке, открыть каждый из файлов, найти в них определенный текст.
А по ctrl+F можно искать и внутри файла средствами винды, надо только галку соответствующую поставить.
no subject
Date: 2014-08-29 04:50 am (UTC)конечная цель совершенно простая - список файлов и напротив каждого соответствующая инфа и комментарий. Это можно и в блокноте сделать, просто в экселе мне удобнее.
no subject
Date: 2014-08-29 04:58 am (UTC)no subject
Date: 2014-08-30 05:35 am (UTC)На 8-ке у меня все эти настройки поиска выглядят иначе, но я нашла галку искать внути файла - не помогло, делает вид, что ищет, но не находит нужного.
no subject
Date: 2014-08-29 05:07 am (UTC)Sub blabla()
i=1
fMask = "C:\путь\" & "*.xml"
fName = Dir(fMask)
Do While fName <> ""
Cells(i,1)=fName ' пишем в ячейку имя файла
iText = FileToTxt("C:\путь\" & fName )
If InStr(1, iText , "искомый текст в файле", 1) > 0 Then
' тут что-то делаем, если нашли, например пишем в соседнюю ячейку:
Cells(i,2)="нашли!"
end if
fName = Dir
i=i+1
Loop
End Sub
Function FileToTxt(iLog) ' считываем файл в текстовую переменную
On Error Resume Next
With CreateObject("Scripting.FileSystemObject")
If .FileExists(iLog) = True Then
With .OpenTextFile(iLog)
FileToTxt = .ReadAll: .Close
End With
End If
End With
On Error GoTo 0
End Function
no subject
Date: 2014-08-29 05:49 am (UTC)А если 8 стоит 64 битная - то облом.
Современный аналог для любой винды - http://f2065.narod.ru/soft/CopyFileName_ru.htm
no subject
Date: 2014-08-29 05:55 am (UTC)У меня пока везде 32-битные версии, но возьму на заметку.
Еще я не увидел в ней копирование сетевых путей. Это реализовано?
no subject
Date: 2014-08-29 05:58 am (UTC)no subject
Date: 2014-08-29 04:53 am (UTC)dir *.xml /B /N /ON > c:\temp\xmllst.csv
Вместо c:\temp... указывайте любой путь, куда разрешена запись, либо запускайте от имени администратора. Потом двойной клик по полученному файлу - и вуаля, автоматом список в экселе.
2. Список только файлов, содержащих строку "ааааа". Тоже из командной строки. Тоже в каталоге с xml
find "aaaaa" *.xml > c:\temp\xmllst1.csv
Потом в Экселе вычистите строки с лишней информацией.
no subject
Date: 2014-08-29 04:58 am (UTC)Он умеет всё, что вам нужно, и намного, намного больше. И очень удобен в использовании :)
no subject
Date: 2014-08-30 05:39 am (UTC)no subject
Date: 2014-08-30 09:28 am (UTC)no subject
Date: 2014-08-29 05:01 am (UTC)no subject
Date: 2014-08-29 05:14 am (UTC)no subject
Date: 2014-08-29 05:26 am (UTC)А вообще, я просто поинтересовался. Нельзя?
no subject
Date: 2014-08-29 05:29 am (UTC)no subject
Date: 2014-08-29 05:39 am (UTC)no subject
Date: 2014-08-29 05:39 am (UTC)no subject
Date: 2014-08-29 04:29 pm (UTC)no subject
Date: 2014-08-30 05:40 am (UTC)no subject
Date: 2014-08-30 09:13 am (UTC)no subject
Date: 2014-08-30 01:15 pm (UTC)no subject
Date: 2014-08-29 05:08 am (UTC)no subject
Date: 2014-08-29 05:11 am (UTC)no subject
Date: 2014-08-29 05:31 am (UTC)no subject
Date: 2014-08-29 07:12 am (UTC)no subject
Date: 2014-08-29 08:41 am (UTC)no subject
Date: 2014-08-29 07:11 am (UTC)dir /b | clip
Скопировать из буфера в ексель.
Инфа - любая строка и любое вхождение? Или надо управлять хмл-ем?
Первое - греп, финд, всякие поиски от тотал командера, фара и прочих проводников, тысячи их.
Второе - искать программы, которые умеют манипулировать хмл-ем, либо vba (достаточно просто).
Судя по всему, в компах вы не сильно сечете. Первая команда - пуск-выполнить-cmd (или поиск-cmd), там набираете cd "папка" (копировать из адресной строки проводника, вставлять по правой кнопке мыши, желательно окружить путь кавычками). Потом набираете команду.
Второе - качаете тотал командер, кнопочками и мышкой переходите куда надо и жмете alt+f7, заполняете нужные поля, жмете найти.
no subject
Date: 2014-08-29 07:43 am (UTC)Извините, уже погуглил, вопрос снят :)
no subject
Date: 2014-08-29 09:54 am (UTC)no subject
Date: 2014-08-30 05:43 am (UTC)управлять xml не нужно.
без тотал командера никак? я не могу его поставить, не потому что не умею, просто нельзя.
no subject
Date: 2014-09-02 05:23 am (UTC)