I have seen Unix file names with the following extra symbols:
"_" Underscores
"." Periods
"," Commas
"&" Ampersands
"-" Hyphens
You absolutely cannot use the following:
"/" Forward slash, used to handle directories.
"\" Back slash, used to escape items.
""" Double quotes, used to package prompt items.
"'" Single right quote, used to package prompt items.
";" Semi-colon, used to separate line entries.
"*" Asterisk, a wild card identifier.
"?" Question, a wild card identifier.
"<>" Greater than, less than. Used for redirection.
"|" Pipes, used for piping.
"@" At symbol, used by the shell.
"+" Plus sign, may be misinterpreted by the shell to concantate items.
"=" Equals, may be misinterpreted by the shell as an equivalency.
So that leaves the following:
"~" Tilde, has the potential to confuse a web server.
"!" Bang, exclamation, may be misinterpreted by the shell.
"#" Pound sign, may be misinterpreted by the shell.
"$" Dollar sign, may be misinterpreted by the shell.
"%" Percent, may be misinterpreted by the shell.
"^" Caret, may be misinterpreted by the shell.
"()" Parenthesis, may be misinterpreted by the shell.
"[]" Brackets, may be misinterpreted by the shell.
"{}" Braces, may be misinterpreted by the shell.
Did I miss any, if so, don't use em.
------------------
Fred Hirsch
Web Consultant & Programmer