Getting Directory Tree
Alex Tweedly
alex at tweedly.net
Wed Feb 2 14:19:50 EST 2005
Derek Bump wrote:
>I'm at a loss. I've spent the last 3 hours trying to make a script that will look at 1 directory and provide a complete hierarchial list of all files within all folders and subfolders, and I can't make it work.
>
>Has anyone else attempted this, and been successful?
>
>
Courtesy of Frederic Rinaldi's "filter demo" - his site is off-line, or
moved and I can't find it, so here's the script below
.... beware line wrap (and French error messages !)
..... beware - it automatically filters a couple of kinds of files -
check if those are suitable for you
> function AllFiles theFolder,addFullPath,allInfos
> --returns full path of all enclosed files
> local startFolder
>
> set cursor to busy
>
> if last char of theFolder is not "/"
> then put "/" after theFolder
>
> if startFolder is empty
> then put theFolder into startFolder
>
> set the defaultFolder to theFolder
> if the result is not empty
> then
> beep
> answer error "Répertoire inexistant:" & return & return &
> theFolder titled "Erreur"
> exit to top
> end if
>
> put the detailed files into filesList
> filter filesList without ".*"
> filter filesList without "Icon%0D*"
> filter filesList without "*,MACSfdrp" -- remove folder aliases
>
> put the folders into foldersList
> filter foldersList without ".*"
>
> repeat for each line loopFolder in foldersList
> put AllFiles(thefolder & loopFolder & "/",addFullPath,allInfos) &
> return after resultList
> end repeat
>
> repeat with i=number of lines of filesList down to 1
> set cursor to busy
>
> if addFullPath
> then put MyURLEncode(theFolder) before line i of filesList
>
> if allInfos = false
> then put item 1 of line i of filesList into line i of filesList
> end repeat
>
> get resultList & filesList
> sort lines of it
>
> return word 1 to -1 of it -- strip empty lines
> end AllFiles
>
> function MyURLEncode what
> put URLEncode(what) into what
> replace "%2F" with "/" in what
> return what
> end MyURLEncode
-- Alex.
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.6 - Release Date: 27/01/2005
More information about the use-livecode
mailing list