Copyright | (c) The University of Glasgow 2002 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | [email protected] |
Stability | provisional |
Portability | non-portable (requires POSIX) |
Safe Haskell | Safe |
Language | Haskell2010 |
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 DirStream Source #
openDirStream dir
calls opendir
to obtain a
directory stream for dir
.
readDirStream :: DirStream -> IO FilePath Source #
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 FilePath Source #
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 #