File: dirname

package info (click to toggle)
scheme9 2025.08.12-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 4,080 kB
  • sloc: lisp: 16,752; ansic: 11,869; sh: 806; makefile: 237; sed: 6
file content (17 lines) | stat: -rw-r--r-- 609 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
S9 LIB  (dirname string)  ==>  string

Return the directory part of the Unix path name in STRING. Note
that DIRNAME performs merely a syntaxical operation without any
regard to the actual file system structure, i.e.

      (dirname "/foo/bar")  ==>  "/foo"

even if "bar" is also a directory. DIRNAME also takes care of
trailing slashes and recognizes some special cases (see examples).

(dirname "/foo/bar/baz")  ==>  "/foo/bar"
(dirname "foo/bar")       ==>  "foo"
(dirname "foo/bar/")      ==>  "foo"
(dirname "/foo")          ==>  "/"
(dirname "/")             ==>  "/"
(dirname "foo")           ==>  "."