shell.pl -- Elementary shell commands
This library provides some basic (POSIX) shell commands defined in
Prolog, such as pwd
and ls
for situations where there is no shell
available or the shell output cannot be captured.
- shell
- Execute an interactive shell. The following options are tried to
find a suitable shell command:
- The Prolog flag
shell
- The environment variable
$SHELL
- The Prolog flag
posix_shell
- The environment variable
%comspec%
(Windows only)
- Errors
- -
existence_error(config, shell)
if no suitable shell can be
found.
- cd
- cd(Dir)
- Change working directory
- pushd
- pushd(+Dir)
- popd
- dirs
- Manage the directory stack:
- pushd/1 is as cd/1, pushing th old directory on a stack
- pushd/0 swaps the current directory with the top of the
stack
- popd/0 pops to the top of the stack
- dirs/0 lists the current directory and the stack.
- pwd
- Print current working directory
- ls
- ls(+Pattern)
- Listing similar to Unix =ls -F=, flagging directories with =/=.
- mv(+From, +To) is det
- Move (Rename) a file. If To is a directory, From is moved into
the directory. Uses expand_file_name/2 on the From argument.
- rm(+File) is det
- Remove (unlink) a file
Re-exported predicates
The following predicates are exported from this file while their implementation is defined in imported modules or non-module files loaded by this module.
- pushd
- pushd(+Dir)
- popd
- dirs
- Manage the directory stack:
- pushd/1 is as cd/1, pushing th old directory on a stack
- pushd/0 swaps the current directory with the top of the
stack
- popd/0 pops to the top of the stack
- dirs/0 lists the current directory and the stack.
- ls
- ls(+Pattern)
- Listing similar to Unix =ls -F=, flagging directories with =/=.
- cd
- cd(Dir)
- Change working directory
- pushd
- pushd(+Dir)
- popd
- dirs
- Manage the directory stack:
- pushd/1 is as cd/1, pushing th old directory on a stack
- pushd/0 swaps the current directory with the top of the
stack
- popd/0 pops to the top of the stack
- dirs/0 lists the current directory and the stack.
- pushd
- pushd(+Dir)
- popd
- dirs
- Manage the directory stack:
- pushd/1 is as cd/1, pushing th old directory on a stack
- pushd/0 swaps the current directory with the top of the
stack
- popd/0 pops to the top of the stack
- dirs/0 lists the current directory and the stack.