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 

Нужно вывести названия песен в текстовый файл

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
gatalsky2010



Joined: 12 Dec 2010
Posts: 40

Post (Separately) Posted: Sat Jun 25, 2011 01:08    Post subject: Нужно вывести названия песен в текстовый файл Reply with quote

Есть папка music, в которой лежит много папок с названиями групп, и в каждой папке с названием группы лежат её песни. Вопрос: возможно ли вывести в текстовом виде (в txt файле) инфу какие папки и какие в них файлы (песни) лежат в папке music?
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:58    Post subject: Reply with quote

http://forum.wincmd.ru/viewtopic.php?t=13736
Back to top
View user's profile Send private message
Avada



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

Post (Separately) Posted: Sun Jun 26, 2011 20:25    Post subject: Reply with quote

Заголовок сокращён. Тема перенесена в "Автоматизацию".
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2221
Location: Москва, Россия

Post (Separately) Posted: Mon Jun 27, 2011 14:37    Post subject: Reply with quote

gatalsky2010
vbs-скрипт:
Code:
'=====================================================================
' Формирование для каждой папки из файла-списка txt-файла,
'   содержащего список вложенных файлов
'
' Параметры:
' {файл-список}
'
' Примеры параметров при вызове из TC:
' %L
'=====================================================================
Option Explicit
Dim FSO, F, F1, FF
Set FSO = CreateObject("Scripting.FileSystemObject")

With FSO.OpenTextFile(WScript.Arguments(0), 1)
  Do While Not .AtEndOfStream
    F = Trim(.ReadLine)
    If F <> "" Then
      If FSO.FolderExists(F) Then
        F1 = FSO.GetFolder(F).Path & ".txt"
        Set FF = FSO.OpenTextFile(F1, 2, True)
        ForFolder FSO.GetFolder(F), FF
        FF.Close
      End If
    End If
  Loop
  .Close
End With

Set FF  = Nothing
Set FSO = Nothing
Wscript.Quit()

Sub ForFolder(pFolder, pFile)
  Dim lF
  For Each lF In pFolder.Files
    ForFile lF.Path, pFile
  Next
  For Each lF In pFolder.SubFolders
    ForFolder lF, pFile
  Next
End Sub

Sub ForFile(pFilePath, pFile)
  pFile.WriteLine pFilePath
End Sub

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jun 27, 2011 14:40    Post subject: Reply with quote

Batya
А разве это не то, что требуется? Туда, кстати, вопрос и был перенесён.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2221
Location: Москва, Россия

Post (Separately) Posted: Mon Jun 27, 2011 15:07    Post subject: Reply with quote

Flasher
Уж и не знаю, то ли это, или не то.
Мне было проще написать новый скрипт, чем перечитывать несколько страниц. Тем более, что название того топика немного не соответствует поставленной здесь задаче. И автор этого топика написал в той теме, что не смог разобраться.

 !  Avada:
Последующий оффтоп удалён. Оргвыводы — здесь.

_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jul 04, 2011 22:00    Post subject: Reply with quote

Batya wrote:
Тем более, что название того топика немного не соответствует поставленной здесь задаче.
Похоже поставленную здесь задачу ты сам неверно понял. В той теме как раз есть решение для отображения в файле структуры одной папки (в данном случае music), а ты написал скрипт для вывода списка файлов внутри выделенных папок с рекурсией без поддиректорий.

Last edited by Flasher on Mon Jul 04, 2011 23:19; edited 1 time in total
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2221
Location: Москва, Россия

Post (Separately) Posted: Mon Jul 04, 2011 22:36    Post subject: Reply with quote

Flasher wrote:
для отображения в файле структуры одной папки

Ну, так и не выделяй ничего, если тебе так надо. Скрипт будет работать и для папки под курсором.

Flasher wrote:
внутри выделенных папок с рекурсией без поддиректорий

Ну, уж с рекурсиями то я уже давно научился работать:
Batya wrote:
Sub ForFolder(pFolder, pFile)
...
For Each lF In pFolder.SubFolders
ForFolder lF, pFile
Next
End Sub


[offtop]
Flasher
Неужели нет продуктивных тем для обсуждения, чем перемывать косточки?
[/offtop]
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jul 04, 2011 22:44    Post subject: Reply with quote

Batya wrote:
Ну, так и не выделяй ничего, если тебе так надо. Скрипт будет работать и для папки под курсором.
Я в курсе. При чём тут это?
Batya wrote:
Ну, уж с рекурсиями то я уже давно научился работать:
И об этом я тоже прекрасно знаю. Опять же - что с того? Ты, прежде чем указывать кусок кода, куда дел предшествующий кусок цитаты?:
Flasher wrote:
а ты написал скрипт для вывода списка файлов ...
Точнее для вывода имён с полными путями. В общем, если тебе станет от этого легче: твой скрипт был испытан - результат не соответствует поставленой задаче.
Структурное отображение - это папки и файлы под ними, а не только файлы с путями сплошным списком, в котором почти невозможно разобраться. Так яснее? Можно было бы хоть пустыми строками отделять пути к файлам для разных папок. Хотя, насколько я понял, там нужны относительные пути, а не полные. ИМХО, в указанной мной теме есть именно то, что требовалось.

[off]
Batya wrote:
Неужели нет продуктивных тем для обсуждения, чем перемывать косточки?
Указание на неправильное решение - это промывание косточек? Для меня это желание помочь в поиске верного решения. Странно, что для тебя иначе...
[/off]
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2221
Location: Москва, Россия

Post (Separately) Posted: Tue Jul 05, 2011 09:16    Post subject: Reply with quote

Flasher
ОК. Теперь я понял, о чём ты. Так бы сразу и писал.
Да, моё решение, вероятнее всего, не соответствует поставленной задаче. Но менять скрипт, указанный в этой теме не вижу смысла, т.к. автор топика, видимо, удовлетворился решением по твоим ссылкам.
Пусть будет ещё одна "вариация на тему".
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Tue Jul 05, 2011 13:19    Post subject: Reply with quote

Batya wrote:
Так бы сразу и писал.
Я рассчитывал, что в предыдущем сообщении информации достаточно. Я там даже подчеркнул нужное.
Насчёт смены - дело хозяйское. Я не против наличия данного скрипта на форуме. Может, кому-то для инвентаризации или ещё чего пригодится. Главное, факт нестыковки с задачей подтверждён, автор молчит, значит, всё ок.
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
Page 1 of 1

 
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