Xray
Гость
|
|
« : 08-07-2009 10:47 » |
|
Нужен простейший скрипт(в программировании не разбираюсь) для выделения из огромного текстового файла определенного куска, файл содержит данные типа даты, время (ггггммччвввв) и 4 числа через пробелы , т.е например: 200904130215 0.72195 0.72195 0.72175 0.72175 200904130216 0.72175 0.72185 0.72175 0.72185 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185 200904130220 0.72185 0.72205 0.72185 0.72195 200904130221 0.72195 0.72195 0.72185 0.72185
Надо чтобы допустим из этого примера вырезать 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185
Спасибо
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #1 : 08-07-2009 11:01 » |
|
Нужен простейший скрипт(в программировании не разбираюсь) Так это тебе работника искать надо...
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #2 : 08-07-2009 11:02 » |
|
Надо чтобы допустим из этого примера вырезать 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185
а по какому критерию вырезано то ? За числа определённые ?
|
|
|
Записан
|
|
|
|
Xray
Гость
|
|
« Ответ #3 : 08-07-2009 11:02 » |
|
А что местных умельцев нет? (хотя бы подсказать в каком направлении работать)
|
|
|
Записан
|
|
|
|
Xray
Гость
|
|
« Ответ #4 : 08-07-2009 11:03 » |
|
Надо чтобы допустим из этого примера вырезать 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185
а по какому критерию вырезано то ? За числа определённые ? Да с определенного числа и времени по определенное число и время
|
|
|
Записан
|
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #5 : 08-07-2009 11:15 » |
|
хотя бы подсказать в каком направлении работать Хоть операционка какая? И насколько большой файл? сколько в нем строк? Можно тупо импортировать в ексель и вырезать руками или макросом.
|
|
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
Xray
Гость
|
|
« Ответ #6 : 08-07-2009 11:22 » |
|
хотя бы подсказать в каком направлении работать Хоть операционка какая? И насколько большой файл? сколько в нем строк? Можно тупо импортировать в ексель и вырезать руками или макросом. В том то и проблема, что файл огромный и при загрузке в ексель, пишет что файл загружен не полностью, размер этого текстового файла примерно 9.5 МБ. Операционка winda 2003
|
|
|
Записан
|
|
|
|
Вад
|
|
« Ответ #7 : 08-07-2009 11:25 » |
|
Ну, если весь файл состоит из таких записей, то проще всего, имхо, с помощью регулярного выражения вырезать дату в каждой строке и проверять на попадание в диапазон. Сравнение - хоть в строковой форме: в таком формате даты будут соблюдать лексикографический порядок. Если файл отсортирован по времени, то сначала искать начало диапазона (соответственно, проверять, что дата больше или равна заданной начальной), а затем "вырезать" до тех пор, пока не будет достигнут конец диапазона (проверять, что дата меньше или равна заданной конечной).
Делать любым скриптовым языком.
|
|
|
Записан
|
|
|
|
Xray
Гость
|
|
« Ответ #8 : 08-07-2009 11:25 » |
|
сколько в нем строк?
Больше 65536
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #9 : 08-07-2009 11:38 » |
|
А чего тут работать?
1. Разбиваем текст на строки (надеюсь признак конца строки 0x0d 0x0a ?)
2. бежим по всему массиву и ищем начало блока. Критерий поиска у тебя есть - проверка на совпадение начала каждой строки с образцом известной длины, в твоём примере - "200904130217".
3. Если нашли, отправляем эту и следующие строки в буфер пока не найдём конец блока (аналагично п.2). Найденая таким образом строка (элемент массива) тоже отправляется в буфер.
4. Повторяем пока элементы массива не кончатся, или пока не найдём конец блока. Ну тут уже тебе решать, что делать если конец не найден.
5. Всё
зы Да, забыл. Буфер сохраняем в файл или делаем с ним что надо.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #10 : 08-07-2009 11:45 » |
|
Если была бы *nix система, то можно было бы обратить внимание на программу split. Ну и на худой конец sed или awk.
|
|
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
Sla
|
|
« Ответ #11 : 08-07-2009 11:49 » |
|
for /F "tokens=1,2,3,4,5 delims= " %%i in (my_file.txt) do if /i not %%j == %%m @echo %%i %%j %%k %%l %%m
|
|
« Последнее редактирование: 08-07-2009 11:54 от Sla »
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Sla
|
|
« Ответ #12 : 08-07-2009 11:51 » |
|
главное знать условия отбора я увидел только то, что второе поле равно последнему
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Sla
|
|
« Ответ #13 : 08-07-2009 11:52 » |
|
Да с определенного числа и времени по определенное число и время
аааа!!
анализируем %%i
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Sla
|
|
« Ответ #14 : 08-07-2009 11:54 » |
|
извините забыл bat- файл
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
RXL
|
|
« Ответ #15 : 08-07-2009 11:54 » |
|
Xray, такой файл можно импортировать в Access, а далее есть визуальное создание запросов.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Xray
Гость
|
|
« Ответ #16 : 08-07-2009 11:54 » |
|
Ну, если весь файл состоит из таких записей, то проще всего, имхо, с помощью регулярного выражения вырезать дату в каждой строке и проверять на попадание в диапазон. Сравнение - хоть в строковой форме: в таком формате даты будут соблюдать лексикографический порядок. Если файл отсортирован по времени, то сначала искать начало диапазона (соответственно, проверять, что дата больше или равна заданной начальной), а затем "вырезать" до тех пор, пока не будет достигнут конец диапазона (проверять, что дата меньше или равна заданной конечной).
Делать любым скриптовым языком.
главное знать условия отбора я увидел только то, что второе поле равно последнему
Условия простые: От одной даты до другой, 4 последующих числа - рандомные и не важны(просто может пример не удачный)
|
|
|
Записан
|
|
|
|
Xray
Гость
|
|
« Ответ #17 : 08-07-2009 12:00 » |
|
Xray, такой файл можно импортировать в Access, а далее есть визуальное создание запросов.
Данный файл не распознается в Access(а если быть точнее: 1 колонка (дата и время) не експортятся)
|
|
« Последнее редактирование: 08-07-2009 12:11 от Xray »
|
Записан
|
|
|
|
Sla
|
|
« Ответ #18 : 08-07-2009 12:12 » |
|
Xray, я уже все написал, тебе только подправить, мой код нужно только чуть-чуть допилить до нужного
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Xray
Гость
|
|
« Ответ #19 : 08-07-2009 12:16 » |
|
Sla, Этот код for /F "tokens=1,2,3,4,5 delims= " %%i in (my_file.txt) do if /i not %%j == %%m @echo %%i %%j %%k %%l %%m вообще куда вбивается
|
|
|
Записан
|
|
|
|
Sla
|
|
« Ответ #20 : 08-07-2009 12:18 » |
|
есть такое командная строка в ней работают bat файлы, cmd файлы
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Вад
|
|
« Ответ #21 : 08-07-2009 12:22 » |
|
Тупая реализация на Perl для упорядоченного по времени файла (без оптимизации, будет выполнять 2 сравнения для каждой строки): if (@ARGV > 1) { my $date1 = shift; my $date2 = shift; while(<>) { my ($dat) = /^(\d+)/; if ($dat gt $date2){ last; } elsif ($dat ge $date1){ print; } } } 2 параметра командной строки - даты начала и конца отрезка в том же формате, что и в файле (типа 200904130215)
|
|
« Последнее редактирование: 08-07-2009 12:25 от Вад »
|
Записан
|
|
|
|
Xray
Гость
|
|
« Ответ #22 : 08-07-2009 12:23 » |
|
есть такое командная строка в ней работают bat файлы, cmd файлы
А ты можешь по моему 1 примеру (см. топ) выписать код, тогда я думаю разберусь
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #23 : 08-07-2009 12:49 » |
|
Xray, такой файл можно импортировать в Access, а далее есть визуальное создание запросов.
Данный файл не распознается в Access(а если быть точнее: 1 колонка (дата и время) не експортятся) Легко!!! Импорт. *.txt С разделителями - пробел. Тип полей - текстовые. Выборка: SELECT Test.* FROM Test WHERE (((Test.Поле1) Between '200904130200' And '200904130220')) ORDER BY Test.Поле1;
|
|
« Последнее редактирование: 08-07-2009 12:53 от RXL »
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
PooH
Глобальный модератор
Offline
Пол:
... и можно без хлеба!
|
|
« Ответ #24 : 08-07-2009 12:55 » |
|
Больше 65536 Эксель 2007 умеет работать с более чем 1млн. строк на листе. Больше строк и столбцов и другие новые ограничения Чтобы можно было исследовать большие объемы данных на листах, Office Excel 2007 поддерживает листы размером до одного миллиона строк и 16-ти тысяч столбцов. Так сетка Office Excel 2007 состоит из 1 048 576 строк и 16 384 столбцов, что обеспечивает увеличение числа строк на 1500% и столбцов на 6300% по сравнению с приложением Microsoft Office Excel 2003. И вот почему: нумерация столбцов теперь оканчивается на XFD вместо IV.
|
|
« Последнее редактирование: 08-07-2009 12:57 от PooH »
|
Записан
|
Удачного всем кодинга! -=x[PooH]x=-
|
|
|
Sla
|
|
« Ответ #25 : 08-07-2009 12:56 » |
|
упс.... не работает for /F "tokens=1,2,3,4,5 delims= " %%i in (%1) do if /i '%%i' GTR '%2' (echo 111) else echo 000 Подставляю EQU - работает GTR не работает запускаю proba.bat my_file.txt 20090413020 если кому нужна справка hh ntcmds.chm
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Sla
|
|
« Ответ #26 : 08-07-2009 13:27 » |
|
1. создать файл test.bat следующего содержания for /F "tokens=1,2,3,4,5 delims= " %%i in (%1) do ( if /i '%%i' GTR '%2' (if /i '%%i' LSS '%3' @echo %%i %%j %%k %%l %%m ))
запустить из командной строки test.bat <имя файла> <дата первая> <дата вторая> на приведенных данных работает test.bat my_file.txt 200904130217 200904130220
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #27 : 08-07-2009 14:25 » |
|
В Windows есть такая штатная вещь, как WSH (Windows Script Host). Можно вот этот код: Const ForReading = 1, ForWriting = 2 Dim FileSystemObject, InputFile, OutputFile Set FileSystemObject = CreateObject("Scripting.FileSystemObject") Source = WScript.Arguments(0) Destination = Source + "_Result.txt" Set InputFile = FileSystemObject.OpenTextFile(Source, ForReading) Set OutputFile = FileSystemObject.OpenTextFile(Destination, ForWriting, True) MinDate = CDbl(InputBox("Введи минимальную дату в формате ГГГГММДДччмм", "Фильтр данных")) MaxDate = CDbl(InputBox("Введи максимальную дату в формате ГГГГММДДччмм", "Фильтр данных")) While Not InputFile.AtEndOfStream Line = InputFile.ReadLine DateInLine = CDbl(Split(Line, " ")(0)) If DateInLine >= MinDate And DateInLine <= MaxDate Then Call OutputFile.WriteLine(Line) End If Wend Call InputFile.Close Call OutputFile.Close WScript.Echo("Результат записан в файл " + Destination) Записать в файл с расширением vbs, например filter.vbs Затем в проводнике перетащить мышью файл с данными на этот созданный файл. Запустится скрипт, который будет обрабатывать "брошенный" на него текстовый файл. Кроме того скрипт запросит у юзера даты диапазона фильтрации.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Xray
Гость
|
|
« Ответ #28 : 08-07-2009 14:39 » |
|
Dimka, СПАСИБО ОГРОМНОЕ, ТЫ просто гений!!!! респект тебе!
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #29 : 09-07-2009 07:54 » |
|
Ну раз пошла такая пьянка... Xray, держи фирменный софт.
|
|
« Последнее редактирование: 09-07-2009 08:03 от Джон »
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Sla
|
|
« Ответ #30 : 09-07-2009 08:13 » |
|
та ладно У меня короче
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #31 : 09-07-2009 08:23 » |
|
А у меня быстрей и удобней. ) зы Создание заняло 10 минут, включая "обстругивание" иконок.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Serg79
|
|
« Ответ #32 : 10-07-2009 09:56 » |
|
Вот еще короче : cat list.txt | awk '$1 > 200904130216 {print}' | awk '$1 < 200904130220 {print}' А вот это в деле: # cat list.txt 200904130215 0.72195 0.72195 0.72175 0.72175 200904130216 0.72175 0.72185 0.72175 0.72185 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185 200904130220 0.72185 0.72205 0.72185 0.72195 200904130221 0.72195 0.72195 0.72185 0.72185
# cat list.txt | awk '$1 > 200904130216 {print}' | awk '$1 < 200904130220 {print}' 200904130217 0.72185 0.72185 0.72185 0.72185 200904130218 0.72185 0.72185 0.72185 0.72185 200904130219 0.72185 0.72185 0.72175 0.72185
|
|
|
Записан
|
|
|
|
Serg79
|
|
« Ответ #33 : 10-07-2009 09:58 » |
|
Можно даже еще короче: # cat list.txt | awk '$1 > 200904130216 && $1 < 200904130220 {print}'
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #34 : 10-07-2009 12:11 » |
|
Serg79, если на то пошло, то еще и cat можно убрать А вообще, юниксовые утилиты хорошо помогают в обработке текста - почти никаких программ не нужно писать.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #35 : 10-07-2009 12:23 » |
|
никсы и иже с ними исключаются из соревнований Операционка winda 2003
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
RXL
|
|
« Ответ #36 : 10-07-2009 12:30 » |
|
Джон, можно установить mingw и включить винду в соревнования по юниксизму. Например, существует комплект UnixTools. Весит 5 МБ в архиве (сейчас выложу в наш архивчик). Это список утилит оттуда (помимо самой sh). agrep.exe ansi2knr.exe basename.exe bc.exe bison.exe bunzip2.exe bzip2.exe bzip2recover.exe cat.exe chgrp.exe chmod.exe chown.exe cksum.exe cmp.exe comm.exe compress.exe cp.exe csplit.exe cut.exe date.exe dc.exe dd.exe df.exe diff.exe diff3.exe dircolors.exe dirname.exe du.exe echo.exe egrep.exe env.exe expand.exe expr.exe factor.exe fgrep.exe find.exe flex.exe fmt.exe fold.exe fsplit.exe gawk.exe gclip.exe gplay.exe grep.exe gsar.exe gunzip.exe gzip.exe head.exe id.exe indent.exe install.exe join.exe jwhois.exe less.exe lesskey.exe libfl.a libfl.lib ln.exe logname.exe ls.exe m4.exe make.exe makedepend.exe makemsg.exe man.exe md5sum.exe mkdir.exe mkfifo.exe mknod.exe mv.exe mvdir.exe nl.exe od.exe paste.exe patch.exe pathchk.exe pclip.exe pr.exe printenv.exe printf.exe pwd.exe recode.exe rm.exe rman.exe rmdir.exe sdiff.exe sed.exe seq.exe shar.exe sleep.exe sort.exe split.exe stego.exe su.exe sum.exe sync.exe tac.exe tail.exe tar.exe tee.exe test.exe touch.exe tr.exe type.exe uname.exe unexpand.exe uniq.exe unrar.exe unshar.exe unzip.exe uudecode.exe uuencode.exe wc.exe wget.exe wget.hlp which.exe whoami.exe xargs.exe yes.exe zcat.exe zip.exe
awk сюда включен под именем gawk (GNU awk). https://club.shelek.ru/viewfiles.php?id=3"unixTools"
|
|
« Последнее редактирование: 10-07-2009 12:58 от RXL »
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #37 : 10-07-2009 13:15 » |
|
На таких условиях согласен. 5MB можно потягаться. )
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Serg79
|
|
« Ответ #38 : 10-07-2009 15:28 » |
|
А вообще, юниксовые утилиты хорошо помогают в обработке текста - почти никаких программ не нужно писать.
Согласен. Иногда Винда в такой ступор вгоняет. К действиям, которые в никсах проделываешь не задумываясь, в Винде даже не знаешь с какой стороны подойти.
|
|
|
Записан
|
|
|
|
Sla
|
|
« Ответ #39 : 10-07-2009 19:09 » |
|
Serg79, не знаю.... не вгоняет
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #40 : 10-07-2009 19:54 » |
|
Джон, можно установить mingw и включить винду в соревнования по юниксизму. Для Windows 2003 есть штатная Microsoft-овская штука под названием SFU (Windows Services for UNIX) - после её установки обеспечивается не только POSIX-совместимость системных вызовов, но и в командной строке становятся доступны стандартные UNIX-утилиты и вроде даже Perl устанавливается и превращается в ещё один системный скриптовый язык помимо VBScript и JScript.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
RXL
|
|
« Ответ #41 : 10-07-2009 20:13 » |
|
Dimka, хотя это боян, но в жизнь так и не вошло. А в штатной поставке ставится только в Vista Ultimate.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Serg79
|
|
« Ответ #42 : 11-07-2009 06:43 » |
|
Serg79, не знаю.... не вгоняет
Ну не знаю Sla. Меня недавно вирус немного потрепал и я решил удалить все исполняемые файлы с диска 'E:'. В никсах это действие выполняется очень просто: $ find . -type f -exec file '{}' \; | awk -F: '$2 ~ /ELF/ {print $1}' | xargs rm -f То же самое проделать в Винде я не смог, так я и плюнул на эту затею.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #43 : 11-07-2009 08:33 » |
|
Serg79, можно так
F3 , *.exe, ищем
потом по вкусу - либо clrl+a , shift+del либо выбираем поотдельности )
|
|
|
Записан
|
|
|
|
Вад
|
|
« Ответ #44 : 11-07-2009 08:55 » |
|
del /F /S /Q *.exe - нет?
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #45 : 11-07-2009 11:29 » |
|
Алексей1153++, Вад, заметьте, что кроме поиска проверяется еще сигнатура в начале файла. Исполняемый файл вовсе не обязательно имеет расширение exe!
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #46 : 11-07-2009 12:22 » |
|
Ром в виндовсе обязательно. Или еше как вариант .com. Иначе система просто будет игнорировать. Даже если будет сигнатура сто раз MZ в начале файла.Винда работает только по суфиксу файла. Потом уже, когда файл разворачивается на запуск. Тогда уже проверяется сигнатура для exe файлов. Комовские даже без проверки запускаются.
|
|
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
RXL
|
|
« Ответ #47 : 11-07-2009 12:29 » |
|
Finch, это для обработки по расширению в проводнике нужно, а выполнить его (или переименовать и выполнить) можно программно. В винде много исполняемых форматов с разными расширениями. Тот же vbs, msc, scr.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #48 : 11-07-2009 12:32 » |
|
Если ты глянеш в реестр по этим расширениям, то увидиш, что там прописано, как вообше их запускать. Изначально было только три запускаемых расширения. .bat, .com, .exe Все остальное я так думаю, система тянет из реестра по каждому конкретному расширению.
Да кстати, если ты переменуеш с .exe, скажем в .exe1 Как бы не пытался, ты не сможеш запустить файл.
|
|
« Последнее редактирование: 11-07-2009 12:34 от Finch »
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
Serg79
|
|
« Ответ #49 : 11-07-2009 19:57 » |
|
Serg79, можно так
F3 , *.exe, ищем
потом по вкусу - либо clrl+a , shift+del либо выбираем поотдельности )
Спасибочки. Только что удалил все EXE-шники. P.S. но все равно согласитесь, коряво как-то.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #50 : 12-07-2009 02:33 » |
|
Спасибочки. Только что удалил все EXE-шники. глубоко извиняюся )))
|
|
|
Записан
|
|
|
|
|