Portability | non-portable (requires POSIX) |
---|---|
Stability | provisional |
Maintainer | libraries@haskell.org |
Safe Haskell | Trustworthy |
String-based POSIX directory support
- createDirectory :: FilePath -> FileMode -> IO ()
- removeDirectory :: FilePath -> IO ()
- data DirStream
- openDirStream :: FilePath -> IO DirStream
- readDirStream :: DirStream -> IO FilePath
- rewindDirStream :: DirStream -> IO ()
- closeDirStream :: DirStream -> IO ()
- data DirStreamOffset
- tellDirStream :: DirStream -> IO DirStreamOffset
- seekDirStream :: DirStream -> DirStreamOffset -> IO ()
- getWorkingDirectory :: IO FilePath
- changeWorkingDirectory :: FilePath -> IO ()
- changeWorkingDirectoryFd :: Fd -> IO ()
Creating and removing directories
createDirectory :: FilePath -> FileMode -> IO ()Source
createDirectory dir mode
calls mkdir
to
create a new directory, dir
, with permissions based on
mode
.
removeDirectory :: FilePath -> IO ()Source
Reading directories
openDirStream :: FilePath -> IO DirStreamSource
openDirStream dir
calls opendir
to obtain a
directory stream for dir
.
readDirStream :: DirStream -> IO FilePathSource
readDirStream dp
calls readdir
to obtain the
next directory entry (struct dirent
) for the open directory
stream dp
, and returns the d_name
member of that
structure.
rewindDirStream :: DirStream -> IO ()Source
rewindDirStream dp
calls rewinddir
to reposition
the directory stream dp
at the beginning of the directory.
closeDirStream :: DirStream -> IO ()Source
closeDirStream dp
calls closedir
to close
the directory stream dp
.
data DirStreamOffset Source
seekDirStream :: DirStream -> DirStreamOffset -> IO ()Source
The working dirctory
getWorkingDirectory :: IO FilePathSource
getWorkingDirectory
calls getcwd
to obtain the name
of the current working directory.
changeWorkingDirectory :: FilePath -> IO ()Source
changeWorkingDirectory dir
calls chdir
to change
the current working directory to dir
.
changeWorkingDirectoryFd :: Fd -> IO ()Source