From: Peter Foldiak <Peter.Foldiak@st-andrews.ac.uk>
To: Christian Mayrhuber <christian.mayrhuber@gmx.net>
Cc: reiserfs-list@namesys.com, Hans Reiser <reiser@namesys.com>,
Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>,
linux-kernel@vger.kernel.org
Subject: Re: file as a directory
Date: Sat, 27 Nov 2004 11:09:41 +0000 [thread overview]
Message-ID: <1101553779.3680.28.camel@grape.st-and.ac.uk> (raw)
In-Reply-To: <200411262213.58242.christian.mayrhuber@gmx.net>
On Fri, 2004-11-26 at 21:13, Christian Mayrhuber wrote:
> Regarding namespace unification + XPath:
> For files: cat /etc/passwd/[. = "joe"] should work like in XPath.
I don't understand this. Why would you need the "."? And why the /
between passwd and [ ?
I would prefer (as was suggested earlier in the thread) that the syntax
for the entry for joe in the passwd file should be
/etc/passwd/joe
and the if you want to select joe's full name, then it should be
/etc/passwd/joe/fullname
and it would result in e.g. "Joe Smith" and
/etc/passwd/joe/shell
whould be the shell joe uses.
Of course something would have to tell the system that the passwd file
has one line for each user, and that fields within a line are separated
by ":"s and what the names of the fields are (e.g. the first field is
called "user"). And when you select inside the /etc/passwd file (or this
type of file) then the default interpretation of joe is that "user"
should be used to select the line.
So by default, /etc/passwd/joe should be equivalent to /etc/passwd[user
= "joe"]
But you should be able to select based on fullname too:
/etc/passwd[fullname = "Joe Smith"]
and
/etc/passwd[shell = "/bin/bash"]/user
should give you the user names of all users whose shell is /bin/bash,
right?
> But what to do with directories?
> Would 'cat /etc/[. = "passwd"]' output the contents of the passwd file
> or does it mean to output the file '[. = "passwd"]'?
I don't really see the point of this . = "passwd" syntax.
> If the first is the case then you have to prohibit filenames looking
> like '[foo bar]'.
I think so.
> If the shells wouldn't like * for themself, I'd suggest something like
> cat /etc/*[. = "passwd"]
> This means: list all contents and show the ones where filename = "passwd".
but isn't that just /etc/passwd ? why complicate it?
> For the contents of /etc/passwd the following could become possible:
> 'cat /etc/passwd/*[. = "joe"]
> 'cat /etc/passwd/*[@shell = "/bin/tcsh"]
no, I think it should be
cat /etc/passwd[shell = "bin/tcsh"]
why the *? and why the @? an attribute? why not simply a part of the
line with / ?
> To change all tcsh entries to bash:
> echo -n "/bin/bash" > /etc/passwd/*[@shell = "/bin/tcsh"]/@shell
I would say
echo -n "/bin/bash" > /etc/passwd[shell = "/bin/tcsh"]/shell
> What about mapping the contents of files into "pure" posix namespace?
Yes, that is exactly what I am suggesting, except that I would like to
extend the POSIX syntax by stealing some useful syntactic bits from
XPath.
> XML is basically a tree, too.
> Notes:
> 1) "...." below is the entry to reiser4 namespace.
> 2) # denotes a shell command
> For example:
>
> # cd /etc/passwd/
> # ls -a *
> . .. .... joe root
> # cd joe
> # ls
> gid home passwd shell uid
yes, but where is the username? that would be the first one listed here,
right?
> # cat shell
> /bin/tcsh
> # cd ../....
> # ls
> plugins
>
> I guess an implementation in reiser4 would require some
> mime-type/file extension dispatcher plus a special
> directory plugin for each mime-type.
next prev parent reply other threads:[~2004-11-27 11:09 UTC|newest]
Thread overview: 107+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-22 13:54 Amit Gud
2004-11-22 14:37 ` Martin Waitz
2004-11-22 15:34 ` Zan Lynx
2004-11-22 17:18 ` Martin Waitz
2004-11-22 18:16 ` Jan Engelhardt
2004-11-22 14:38 ` Al Viro
2004-11-22 15:04 ` Helge Hafting
2004-11-22 17:15 ` Tomas Carnecky
2004-11-22 18:48 ` Hans Reiser
2004-11-24 9:16 ` Peter Foldiak
2004-11-24 14:05 ` Jan Engelhardt
2004-11-24 15:02 ` Paolo Ciarrocchi
2004-11-24 15:25 ` Peter Foldiak
2004-11-26 16:13 ` Hans Reiser
2004-11-24 16:11 ` Christian Mayrhuber
2004-11-25 10:50 ` Peter Foldiak
2004-11-26 18:19 ` Hans Reiser
2004-11-26 21:13 ` Christian Mayrhuber
2004-11-27 11:09 ` Peter Foldiak [this message]
2004-11-27 13:14 ` Christian Mayrhuber
2004-11-29 21:20 ` Horst von Brand
2004-11-29 22:59 ` Peter Foldiak
2004-11-29 23:35 ` Kevin Fox
2004-11-30 8:54 ` Peter Foldiak
2004-11-30 16:28 ` Kevin Fox
2004-11-30 16:42 ` Jan Engelhardt
2004-11-30 17:35 ` Jesse Pollard
2004-11-30 17:49 ` Jan Engelhardt
2004-11-30 18:26 ` Amit Gud
2004-11-30 18:39 ` Jan Engelhardt
2004-12-01 2:44 ` Scott Young
2004-12-03 9:58 ` Amit Gud
2004-11-30 14:51 ` Horst von Brand
2004-11-30 15:29 ` Peter Foldiak
2004-11-30 16:31 ` Horst von Brand
2004-11-30 17:03 ` Hans Reiser
2004-12-14 16:58 ` Peter Foldiak
2004-12-14 17:21 ` Jan Engelhardt
2004-12-14 18:11 ` Peter Foldiak
2004-12-14 18:16 ` Jan Engelhardt
2004-12-14 17:24 ` Hans Reiser
2004-12-14 21:27 ` Peter Foldiak
2004-12-15 4:47 ` David Masover
2004-12-15 5:28 ` Hans Reiser
2004-12-16 0:16 ` David Masover
2004-12-16 18:52 ` Hans Reiser
2004-12-17 15:58 ` David Masover
2004-12-17 16:52 ` Hans Reiser
2004-12-18 1:52 ` Horst von Brand
2004-12-20 17:21 ` Hans Reiser
2004-12-15 9:27 ` Peter Foldiak
2004-12-15 23:56 ` David Masover
2004-12-16 18:48 ` Hans Reiser
2004-12-16 19:01 ` Peter Foldiak
2004-12-17 18:09 ` Hans Reiser
2004-12-18 0:20 ` David Masover
2004-12-17 16:02 ` David Masover
2004-12-17 16:54 ` Hans Reiser
2004-12-15 5:19 ` Hans Reiser
2004-12-14 19:30 ` Horst von Brand
2004-12-15 4:52 ` David Masover
2004-12-15 5:31 ` Hans Reiser
2004-12-15 5:10 ` Hans Reiser
2004-12-15 13:28 ` Horst von Brand
2004-12-15 16:57 ` Hans Reiser
2004-12-15 19:11 ` Markus Törnqvist
2004-12-15 20:57 ` Hans Reiser
2004-11-30 17:03 ` Peter Foldiak
2004-11-30 17:50 ` Horst von Brand
2004-11-30 18:23 ` Dr. Giovanni A. Orlando
2004-11-29 23:11 ` Peter Foldiak
2004-11-30 16:04 ` Martin Waitz
2004-11-27 12:49 ` Markus Törnqvist
2004-11-29 15:41 ` Hans Reiser
2004-11-26 17:43 ` Hans Reiser
2004-11-27 11:50 ` Tomasz Torcz
2005-05-10 9:39 ` Peter Foldiak
2005-05-10 14:53 ` Hans Reiser
2005-05-10 15:32 ` Peter Foldiak
2005-05-10 16:30 ` Sean McGrath
2005-05-10 17:25 ` Hans Reiser
2005-05-10 17:39 ` Sean McGrath
2005-05-10 18:52 ` Hans Reiser
2005-05-10 19:39 ` Sean McGrath
2005-05-10 20:11 ` Hans Reiser
2005-05-16 12:32 ` Leo Comerford
2005-05-10 15:14 ` Valdis.Kletnieks
2005-05-10 15:38 ` Peter Foldiak
2005-05-10 17:20 ` Hans Reiser
2005-05-11 10:23 ` Helge Hafting
2004-11-23 6:20 ` Amit Gud
2004-11-24 10:32 ` Helge Hafting
2004-11-24 11:07 ` Amit Gud
2004-11-25 23:09 ` Pavel Machek
2004-11-28 18:53 ` Helge Hafting
2004-11-28 19:01 ` Pavel Machek
2004-11-22 17:59 ` Valdis.Kletnieks
2004-11-22 18:24 ` Jan Engelhardt
2004-11-22 18:52 ` Hans Reiser
2004-11-22 19:05 ` Jan Engelhardt
2004-11-23 9:46 ` Amit Gud
2004-11-23 14:00 ` Jan Engelhardt
2004-11-23 14:17 ` Amit Gud
2004-11-23 9:11 ` Dirk Steinberg
2004-11-23 9:37 ` Markus Törnqvist
2004-11-23 19:00 ` Hans Reiser
[not found] <fa.imi6gu8.1e7qkqc@ifi.uio.no>
[not found] ` <fa.hcr9rb0.k6egam@ifi.uio.no>
2004-11-26 4:11 ` Bodo Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1101553779.3680.28.camel@grape.st-and.ac.uk \
--to=peter.foldiak@st-andrews.ac.uk \
--cc=christian.mayrhuber@gmx.net \
--cc=linux-kernel@vger.kernel.org \
--cc=paolo.ciarrocchi@gmail.com \
--cc=reiser@namesys.com \
--cc=reiserfs-list@namesys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®