blob: ccb8c841bde583536e90000beecfd1b756455674 [file] [log] [blame]
Jari Aalto726f6381996-08-26 18:22:31 +00001# Date: Fri, 11 Oct 91 11:22:36 edt
2# From: friedman@gnu.ai.mit.edu
3# To: bfox@gnu.ai.mit.edu
4
5# A replacement for dirname(1). This one appears less often on some
6# systems I use than basename(1), and I really depend on it for some
7# things. Usage: dirname [path]
8function dirname ()
9{
10 local dir="$1"
11 local tdir="${dir%/}"
12
13 # Strip trailing '/' characters from dir (unusual that this should
14 # ever occur, but dirname(1) seems to deal with it.)
15 while [ "${tdir}" != "${dir}" ]; do
16 tdir="${dir}"
17 dir="${tdir%/}"
18 done
19
20 echo "${dir%/*}"
21}