Подземелье Кода

22-ое марта 2006

Командное файло для того чтобы найти первый сопрягая архив в путе поиска…

Сохранено вниз: Серия - 12:49 am Брайан @

Это другой малый app я написал для кто-то для использования на форуме ZTree.

Это одно командное файло DOS которое находит архивы в вашем путе поиска которые сопрягают критерии вы проходите к ему.
Например вы смогли напечатать «SearchPath на машинке WPFile.Doc» и оно возвратило бы положение того архива в вашем путе поиска. Если вы печатаете внутри просто «SearchPath на машинке MyApp», то оно сделает поиск для всех executible архивов как определено перемеююым PATHEXT относящой к окружающей среде.

Я нашел эта программа весьма полезная с тех пор, когда щелкая Start>Run и вход НИКАКИЕ (было предположено к autocomplete к блокноту) побежали программа которая я не смог найти везде. SearchPath нашло оно в директории сети.

Продемонстрированные принципиальные схемы:
Подпрограммы командного файла - используйте ЗВОНОК для того чтобы исполнить положение скачки в таком же командном файле если было отдельно серией
ПЕРЕХОД: EOF - Использовано для того чтобы возвратить из командного файла ИЛИ подпрограммы серии.
Для петель & достигать к перемеююым окружающей среды
Рекурсия ребенка - родитель вызывает ребенка и ребенок в свою очередь вызывает родителя который смог в свою очередь
ребенок снова.

DOS:
  1. :: *************************************************************************
  2. ::  SearchPath.Bat                                                                                            10/31/2005
  3. ::  Написано Брайан Неспециалистом (Capt Queeg AKA)
  4. ::  Навестиньте он на http://www.TheCodeCave.com
  5. :: 
  6. ::  Серия написанная, что показать программу которая побежалась бы когда
  7. ::  filename напечатан на машинке на запросе командй.  Как раз демонстрация для
  8. ::  Hartmut на http://www.ztw3.com/forum/forum.cgi
  9. :: 
  10. ::  Использование: SearchPath ProgramName [.EXT]
  11. :: 
  12. ::  История:
  13. ::     10/31/2005 - BL - Создано
  14. ::     11/01/2005 - BL - Извлекли использование архива Temp
  15. :: 
  16. :: *************************************************************************
  17. @echo
  18. :: Вс это о вниз до одна подпрограмма которая устанавливает перемеююый
  19. :: такое же имя.
  20. звонок: SearchedFilePath %1
  21.  
  22. :: Если никакая программа не найдена, то скажите так.
  23. если отголосок "" == «%SearchedFilePath% " там никакая сопрягая программа в путе поиска
  24.  
  25. :: Если программа была найдена, то вторьте своему имени.
  26. если отголосок %SearchedFilePath% "" == НЕ «%SearchedFilePath% "
  27.  
  28. :: Освободите вне нашу перемеююый temp
  29. установите SearchedFilePath=
  30.  
  31. :: Прекращено
  32. ПЕРЕХОД: EOF
  33. :: *************************************************************************
  34.  
  35.  
  36. :: *************************************************************************
  37. ::  Процедуры по поддержки
  38. ::
  39. ::  Эти режимы вызваны с ЗВОНОКОМ директивным и ПЕРЕХОД: EOF
  40. ::  прекращает тот ЗВОНОК но не прекращает весь ход
  41. ::  командное файло.
  42. :: *************************************************************************
  43.  
  44. :: *************************************************************************
  45. : SearchedFilePath
  46. ::  Возвращает полный путь к пройденному архиву в searchpath
  47. ::
  48. ::  Возвращает пробел если не найдено.
  49. ::
  50. :: *************************************************************************
  51. : установите SearchedFilePath= 
  52.   :: Установите автоматически принимаемое значение для того чтобы прикрыть.
  53.   установите SearchedFilePath=
  54.  
  55.   :: Если никакая ручка выдвижения оно
  56.   если звонок "" == «%~x1 ":, тоSearchWithExtensions %1&GOTO: EOF
  57.  
  58.   :: Там никакое выдвижение, оно пусто?
  59.   если "" == «%1 " ПЕРЕХОД:, тоEOF
  60.  
  61.   :: Так, мы имеем выдвижение.  То значит что мы может сделать просто поиск.
  62.   :: %~dp$PATH: 1 автоматически ищет путь для нас.  Это a
  63.   :: комплект перемеююого командой звонока.
  64.   установите SearchedFilePath=%~dp$PATH: 1%1
  65.   если == " %1» «%SearchedFilePath% " установило SearchedFilePath=&GOTO:, тоEOF
  66.   ПЕРЕХОД: EOF
  67. :: *************************************************************************
  68.  
  69. :: *************************************************************************
  70. : SearchWithExtensions
  71. ::  Повторяет выдвижения собранные от окружающей среды PATHEXT
  72. ::  и поиски до архива не найдены.
  73. ::
  74. ::  Возвращает пробел если не найдено.
  75. ::
  76. :: *************************************************************************
  77.     :: Выступите счетчик с иничиативой для смотреть множественные результаты поиска в одной линии
  78.     установите cnt=0
  79.  
  80.     : SearchLoop
  81.       :: Пролом вне после 20 проверок.
  82.       :: Если вы могли иметь больше чем 20 выдвижений, то увеличьте это значение.
  83.       :: Если вы смогли узнать, то сколько периоды там в архиве temp,
  84.       :: вы смогли оптимизировать это.
  85.       если == " 20» «%cnt% " ПЕРЕХОД:, тоSearchLoopCleanup
  86.       установите /A cnt=%cnt%+1
  87.       :: Постоянно ищите одиночную линию архив возвращающ каждое последовательное
  88.       :: ищите результат и рекурсивно передавайте его к режиму SearchedFilePath. 
  89.       :: Когда мы просим знак внимания # который не существует и пробел возвращен,
  90.       :: прекращени прекращение вне.
  91.       для delims= /F «tokens=%cnt%. ; » %%C в ("%PATHEXT%") вызывают: SearchedFilePath %1.%%C
  92.       если "" == «%SearchedFilePath% " ПЕРЕХОД:, тоSearchLoop
  93.    
  94.     : SearchLoopCleanup
  95.       :: Освободите нашу перемеююый Temp
  96.       установите cnt=
  97.   ПЕРЕХОД: EOF
  98. :: *************************************************************************

Никакие комментарии »

Никакие комментарии пока.

Питание RSS для комментариев на этом столбе. URL TrackBack

Выйдите комментарий

Приведено в действие WordPress