Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Создание группы HTML-файлов с именами из файла-списка
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Fri Jun 24, 2011 17:27    Post subject: Reply with quote

Подскажите - тема создания каталогов из списка текстового файла неоднократно обсуждалась. а вот создание группы html файлов с именами из файла списка я не встречал. В принципе такое возможно?
Например существует макет html шаблона
Code:
<html>
<head>
<title>Untitled</title>
</head>
<body>
<center>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="640" height="480">
  <param name="movie" value="11.swf" />
  <param name="quality" value="high" />
  <param name="allowScriptAccess" value="always" />
  <param name="wmode" value="transparent">
     <embed src="11.swf"
      quality="high"
      type="application/x-shockwave-flash"
      WMODE="transparent"
      width="640"
      height="480"
      pluginspage="http://www.macromedia.com/go/getflashplayer"
      allowScriptAccess="always" />
</object></center>
</center>
</body>
</html>
-существует текстовой файл со списком имен (без расширения html) Нужно чтобы при нажатии на кнопку в текущей директории создавались html файлы с именами из списка текстового файла. И с содержимым указанным в коде. Конечно можно создать один файл, далее его размножить, затем использовать групповое переименование по списку. Но если есть возможность решить это более простым путем было бы здорово. Особенно для тех кто занимается web дизайном.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jun 24, 2011 17:56    Post subject: Reply with quote

shveicar
Вот только свалку из оффтопных хотелок тут устраивать не надо. Создаём новую тему и вперёд.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10415
Location: Россия, Саратов

Post (Separately) Posted: Fri Jun 24, 2011 20:56    Post subject: Reply with quote

shveicar
Соблюдаем правила! Отделено в самостоятельную тему из Редактирование файлов (вырезать, вставить, массово).
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Fri Jun 24, 2011 21:07    Post subject: Reply with quote

Прошу прощения. Я подумал что темы схожи.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jun 24, 2011 21:43    Post subject: Reply with quote

Code:
' Создание html-файлов в активной панели с именами из файла-списка
'и содержимым указанного файла-шаблона
' Параметры: "<Путь к файлу списку>" "<Путь к файлу-шаблону>"
'================================================
With CreateObject("WScript.Shell")
L=.ExpandEnvironmentStrings(WScript.Arguments(0))
T=.ExpandEnvironmentStrings(WScript.Arguments(1))
D=.CurrentDirectory
End With
With CreateObject("Scripting.FileSystemObject")
List=.OpenTextFile(L, 1).ReadAll
  On Error Resume Next
  For Each F In Split(List, vbNewLine)
    If F>vbNullString Then .GetFile(T).Copy D&"\"&F&".html"
  Next
End With


Last edited by Flasher on Sun Jun 26, 2011 02:27; edited 5 times in total
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Fri Jun 24, 2011 22:17    Post subject: Reply with quote

Спасибо, но выскакивает ошибка строка 6, символ 1 файл не найден
Оба текстовых файла лежат в одной директории со скриптом.
параметры запуска
Code:
"%COMMANDER_PATH%\Utils\filelist.txt"  "%COMMANDER_PATH%\Utils\shablon.txt"
в одну строчку, что может быть не так?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jun 24, 2011 22:26    Post subject: Reply with quote

Дело в переменных окружения. Если параметры писать в строке "Команда", то переменные будут подменяться. В поле "Параметры" работало бы с обычными путями. Поправил для такого варианта, только надо не забывать про удвоенный знак % в этом поле. Путь запуска в кнопке должен быть очищен.
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Fri Jun 24, 2011 23:28    Post subject: Reply with quote

Выдает строка 11 символ 1 путь не найден.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jun 24, 2011 23:35    Post subject: Reply with quote

Я вроде всё пояснил. Что неясно из написанного? Можно увидеть код кнопки?
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Fri Jun 24, 2011 23:39    Post subject: Reply with quote

может попробовать на базе такого скрипта создать нужный вариант
Code:
'==========================================================================
' Создание в текущей папке для всех файлов с указанным расширением
'   аналогичного файла с другим указанным расширением

' В параметрах вызова из TC должно быть прописано:
' "%P" {расширение исходных файлов} {расширение создаваемых файлов}
' Пример:
' "%P" wmv html
'==========================================================================
Dim MB
If WScript.Arguments.Count < 3 Then
  MB = MsgBox("Заданы не все параметры!", vbOKOnly + vbExclamation, "Создание новых файлов")
  WScript.Quit
End If

Dim FSO, CurrentFolder, Ext1, Ext2, oFolder, oFile, NewFilePath, oNewFile
Set FSO = CreateObject("Scripting.FileSystemObject")

CurrentFolder = WScript.Arguments(0)
Ext1          = WScript.Arguments(1)
Ext2          = WScript.Arguments(2)

If not FSO.FolderExists(CurrentFolder) Then
  MB = MsgBox("Папка " & CurrentFolder & " не существует!", vbOKOnly + vbExclamation, "Создание новых файлов")
  WScript.Quit
End If

Set oFolder = FSO.GetFolder(CurrentFolder)

For Each oFile in oFolder.Files
  If FSO.GetExtensionName(oFile.Path) = Ext1 Then
    NewFilePath = CurrentFolder & FSO.GetBaseName(oFile.Path) & "." & Ext2
    If not FSO.FileExists(NewFilePath) Then
      Set oNewFile = FSO.CreateTextFile(NewFilePath)
      oNewFile.Close
    End If
  End If
Next

Set oFolder  = Nothing
Set oFile    = Nothing
Set oNewFile = Nothing
Set FSO      = Nothing
Wscript.Quit
- Да простит меня его автор за модернизацию. Единственное в данном виде скрипт создает html файлы(с пустым содержанием) из выделенных файлов в данном случае (видео файлы с расширением wmv) Вод если загнать в него шаблон(пусть даже самый простой например
Code:
Dim fso, F
Set fso = CreateObject("scripting.filesystemobject")
F = WScript.Arguments(0)
Set F=fso.OpenTextFile(F, 2, True)
F.WriteLine("<html>")
F.WriteLine("<head>")
F.WriteLine("<title>Untitled</title>")
F.WriteLine("</head>")
F.WriteLine("<body>")
F.WriteLine("<center>")
F.WriteLine("<h1>страница</h1>")
F.WriteLine("<table>")
F.WriteLine("<tr>")
F.WriteLine("<td>")
F.WriteLine("<p>привет</p>")
F.WriteLine("</td>")
F.WriteLine("</tr>")
F.WriteLine("</table>")
F.WriteLine("</center>")
F.WriteLine("</body>")
F.WriteLine("</html>")
Set F=Nothing
Set fso=Nothing
WScript.Quit
- (теги впоследствии можно заменить программой например- словогрыз) и сделать создание из файла списка, то будет то что надо.

Добавлено спустя 5 минут:

Quote:
Я вроде всё пояснил. Что неясно из написанного? Можно увидеть код кнопки?
Пожалуйста -
Code:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\sozdanie_shablona_html.vbs
"%COMMANDER_PATH%\Utils\filelist.txt"  "%COMMANDER_PATH%\Utils\shablon.txt"
%COMMANDER_PATH%\ico\2trees_bg740.ico
sozdanie_shablona_html

0
-1
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri Jun 24, 2011 23:50    Post subject: Reply with quote

shveicar wrote:
Пожалуйста -
Видимо, неясно (хотя вроде по-русски написано).
Для первого варианта:
Quote:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\sozdanie_shablona_html.vbs "%COMMANDER_PATH%\Utils\filelist.txt
" "%COMMANDER_PATH%\Utils\shablon.txt"

ico\2trees_bg740.ico
sozdanie_shablona_html
Для второго:
Quote:
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\sozdanie_shablona_html.vbs
"%
%COMMANDER_PATH%%\Utils\filelist.txt" "%%COMMANDER_PATH%%\Utils\shablon.txt"
ico\2trees_bg740.ico
sozdanie_shablona_html
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Sat Jun 25, 2011 00:00    Post subject: Reply with quote

Извиняюсь просто такая комбинация
Code:
%%
мне раньше не попадалась - кстати по мимо файлов из текстового списка создается еще один файл - без имени вида
Code:
 .html
но тоже с содержанием(шаблона) - хотя в списке его нет, то-есть добавляется один лишний файл. А так скрипт работает - спасибо!
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Jun 25, 2011 01:13    Post subject: Reply with quote

shveicar wrote:
Извиняюсь просто такая комбинация мне раньше не попадалась
Справка wrote:
Диалоговое окно: Конфигурация – Панель инструментов
...
Параметры:
...
      %% Вставляет одиночный знак процента.

shveicar wrote:
хотя в списке его нет
Пустую строку в списке надо убрать.
Back to top
View user's profile Send private message
shveicar



Joined: 18 Apr 2011
Posts: 277
Location: Россия Москва

Post (Separately) Posted: Sat Jun 25, 2011 01:34    Post subject: Reply with quote

Большое Спасибо - как я сразу не догадался! Как говорится век живи -век учись.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sat Jun 25, 2011 01:40    Post subject: Reply with quote

Пожалуйста. Добавил условие, чтобы пустые или пробельные строки игнорировались.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group