I'm not exactly sure if this is a "right" question to post here. I'm probably asking more about "opinions" than actual categorical answers (of those that either work or don't, and that's it).
I was wondering what name separators would be the most linux friendly (or more specifically, Bash friendly) and human friendly at the same time.
Let's say I want to create a directory that contains something related to Mr. Foo Bar (Foo being the first name, Bar being the last name)
Having the name "
Foo-Bar/" is very convenient.
- is a "regular" character, it doesn't need to be escaped, it clearly shows that
Bar are two separate things... Nice.
Foo.Bar" is a bit trickier. Someone may think that
Foo.Bar is actually a file (at a first glance, specially if you don't have terminals with coloring enabled) where "
Foo" is the filename, and "
Bar" the extension.
I could also use "
Foo Bar", but then I need to escape the whitespace when I want to access the directory and, if I want to list the contents of the parent directory (where
Foo Bar is located) and put said list in a bash array, the white space is going to cause trouble (a lot). Not nice.
() also cause a lot of issues. They also need to be escaped, then to cause trouble with commands as
scp... Not nice.
So... the question (at last) is: If you need to make the name of a file clear and meaningful at a fist glance, and you need to use separators, what do you use?