Dirname
codice_1 is a standard computer program on Unix and Unix-like operating systems. When codice_1 is given a pathname, it will delete any suffix beginning with the last slash (codice_3) character and return the result. codice_1 is described in the Single UNIX Specification and is primarily used in shell scripts. History. The version of codice_1 bundled in GNU coreutils was written by David MacKenzie and Jim Meyering. The command is available as a separate package for Microsoft Windows as part of the UnxUtils collection of native Win32 ports of common GNU Unix-like utilities. The command has also been  ported to the IBM i operating system. Usage. The Single UNIX Specification for codice_1 is: Examples. dirname will retrieve the directory-path name from a pathname ignoring any trailing slashes $ dirname /home/martin/docs/base.wiki /home/martin/docs $ dirname /home/martin/docs/. /home/martin/docs $ dirname /home/martin/docs/ /home/martin $ dirname base.wiki $ dirname / Performance. Since codice_1 accepts only one operand, its usage within the inner loop of shell scripts can be detrimental to performance. Consider The above excerpt would cause a separate process invocation for each line of input. For this reason, shell substitution  is typically used instead or if relative pathnames need to be handled as well Note that these handle trailing slashes differently than dirname. Misconceptions. We might think that paths that end in a trailing slash are a directory. But actually, the trailing slash represents all files within the directory.