The following sections discuss the shell concepts most needed by novice users. A flag identifies some optional capability and begins with a hyphen. An argument is usually the name of a file, such as one to be read. The -n flag tells cat to number the lines in the display. The hyphen that precedes a flag is a special character used to distinguish flags from filenames.
Commands can contain other special characters as well.
The shell interprets such characters, and sometimes replaces them with other values, before it passes the command with its flags and arguments to the program that actually executes the command. Remember that uppercase and lowercase letters are not interchangeable. The following sections describe many of the characters that have special meaning to the C shell. Keep in mind that MOST punctuation characters have some special meaning. Therefore, you should not include any punctuation character other than period or underscore in the names you give to files and directories, or you may get surprising results.