All predicatesShow sourceshell.pl -- Elementary shell commands

This library provides some basic shell commands from Prolog, such as pwd, ls for situations where there is no shell available or the shell output cannot be captured.

It is developed on the ST-MINIX version. MINIX did not have a vfork() call, and thus only allows shell/[0,1,2] if Prolog uses less than half the amount of available memory.

Source shell
Execute an interactive shell. The executed shell is defined by the environment SHELL or comspec (Windows). If neither is defined, /bin/sh is used.
Source cd
Source cd(Dir)
Change working directory
Source pushd
Source pushd(+Dir)
Source popd
Source 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.
Source pwd
Print current working directory
Source ls
Source ls(+Pattern)
Listing similar to Unix =ls -F=, flagging directories with =/=.
Source mv(+From, +To) is det
Move (Rename) a file. If To is a directory, From is moved into the directory.
Source rm(+File) is det
Remove (unlink) a file
Source name_to_file(+Name, -File)[private]
Convert Name into a single file.
Source warning(+Fmt, +Args:list) is det[private]
Source table(+List, +Width)//[private]
Produce a tabular layout to list all elements of List on lines with a maximum width of Width. Elements are placed as ls does:
1  4  7
2  5  8
3  6
Source cd
Source cd(Dir)
Change working directory
Source pushd
Source pushd(+Dir)
Source popd
Source 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.
Source pushd
Source pushd(+Dir)
Source popd
Source 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.
Source pushd
Source pushd(+Dir)
Source popd
Source 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.
Source ls
Source ls(+Pattern)
Listing similar to Unix =ls -F=, flagging directories with =/=.