Hi,

I don't know of a list, but AFAIK practically any character is valid.
The only question is how easy they are to manipulate.  (Well, you
probably can't have a null char in a filename...but that's just a
guess.)

I think the real issue is which characters have special meaning to the
shell you are using.  For example, the ampersand (&) has special
meaning to Bash, but you can still use it in a filename if you escape
it.  I tried the following as an extreme example, and it worked:

$ touch '!@#$%^&*()-=^M^?^[[11~'

where
^M is a literal newline
^? is a literal backspace
^[[11~ is F1

It worked just fine.
You can manipulate the file by either quoting verything like this

$ rm '!@#$%^&*()-=^M^?^[[11~'

or like this

$ rm \!\@#\$%\^\&\*\(\)-\=^M^?^[\[11~

They can have embedded quotes and spaces, too:

$ touch blah\ \'blah\'\ blah
$ ls
blah 'blah' blah

It's just a real pain. :)  I prefer to stick to filenames consisting
of the set
[A-z][0-9].-_
It makes things a lot easier.  Note that if you are using Bash,
tab-completion is your friend if you need to mess with funky
filenames.  It will escape everything for you.

HTH,
Ben

On Tue, Jan 01, 2002 at 08:57:36AM +0600, Nalin Perera wrote:
> Hi,
> 
> >From where can I find the valid characters that should be in a linux file
> name. And what are the invalid characters?
> 
> Thanks
> Nalin Perera

-- 
Ben Logan: ben at wblogan dot net
OpenPGP Key KeyID: A1ADD1F0

You know it's Monday when you wake up and it's Tuesday.
                -- Garfield



_______________________________________________
Seawolf-list mailing list
[EMAIL PROTECTED]
https://listman.redhat.com/mailman/listinfo/seawolf-list

Reply via email to