lsfs -- Turn "ls -lR" output to explorable filesystem

Usage: ls -lR | ./lsprepare | ./lsfs mountpoint

ls some_directory -lR | ./lsprepare | ./lsfs mountpoint   # This don"\t work


lsprepare is a Perl script that converts things like "-rw-r--r-- 1 vi vi 1230489 2008-07-23 18:15 SoB.txt" to easily-parsable for lsfs format;

lsfs first reads output of lsprepare to memory, then mounts FUSE filesystem with listed files.

You may retrieve this listing from public FTP server:
vi@vi-notebook:~/code/lsfs$ echo -e 'ftp\npassive\nls -R' | ftp 127.0.0.1 | ./lsprepare -i 3 > 127.0.0.1.lsfs
vi@vi-notebook:~/code/lsfs$ mkdir -p qqq && ./lsfs qqq < 127.0.0.1.lsfs
Unknown line: "Name (127.0.0.1:vi): Passive mode on.
" in directory ""
vi@vi-notebook:~/code/lsfs$ # Access files list of ftp://127.0.0.1/ in ./qqq direcctory
vi@vi-notebook:~/code/lsfs$ fusermount -u qqq


lsprepare options:
-i number -- number of datetime fields to ignore (usually 2 or 3; field is \S+\s+)
-c        -- interpret listing as 'ls -lR --quoting-style=c' output

lsfs options:
Only ordinary FUSE options, like '-o nonempty'.

Annotated example of lsfs input:
(see EXAMPLE)
Usage: mkdir test && cat EXAMPLE | ./lsfs test

lsfs support date records, but lsprepare not, it just ignores date fields.

Symbolic links are supported.
File reading is supported (if content is not provided, which is not the case of lsprepare output).
Any kind of writing is not supported.

Contact: _vi@list.ru, _Vi@jabnet.org, 369291307@ICQ, _Vi@irc.tut.by
Any messages (except of spam), including just simple "Hello, lsfs works" are appreciated.
