/quote
Usage:
/QUOTE [options] [pre] '"file"[suf]
/QUOTE [options] [pre] #"recall_cmd"[suf]
/QUOTE [options] [pre] !"shell_cmd"[suf]
/QUOTE [options] [pre] `"TF_cmd"[suf]
/Quote generates lines of text, one
for each line quoted from a file, shell command,
history, or TF command. This will be
done at a rate described in the section
"processes".
Options and arguments:
- -ddisp
- disposition of generated text. Disp is one of: "echo"
(echo to the screen), "send" (send directly to the
socket), or "exec" (execute
text as a tf command). The default disp is "send" if there
is no pre, and "exec" if there is a pre.
- -wworld
- Commands will be executed with world as the
current
world. If world is blank, it uses the world that was
current
when the /quote
started. If -w is omitted, the command's
current world will be
whatever happens to be in the foreground when the command occurs.
(See "sockets").
- -time
- The delay between each generated line. It can have the format
"hours:minutes:seconds",
"hours:minutes", or "seconds".
If -time is omitted, the
variable
%{ptime} is
used. If time is given as the letter "S", the quote will
run synchronously with no delay (see
"processes"). If a slow
shell command is used with
/quote -S !, tf will hang
until the command produces some output or exits. A synchronous
/quote may be used inside
another /quote.
- -ssub
- Expand TF_cmd as if
%{sub} were set
to sub.
By default, /quote
expands TF_cmd as if
%{sub}
were "full".
- pre
- pre is prefixed to each generated line. If pre
contains any of the command characters ('!`#), they must be
preceded with '\' to remove their special meaning.
- 'file
- Get text from file. The file name is expanded as
described under /help
filenames.
- !shell_cmd
- Get text from the standard output and standard error of
executing shell_cmd in the shell.
- `TF_cmd
- Get text from the output of executing TF_cmd in tf.
- #recall_args
- Get text from executing
/recall
recall_args
. (See
"recall" for the exact syntax).
- suf
- suf is suffixed to each generated line. If omitted,
the double quotes around the file or command may be
omitted.
An asynchronous /quote returns the pid
of the new process, or 0 if an
error occurred. A synchronous shell or
command quote returns the return value of the command. A synchronous file
quote returns 0 on error, nonzero otherwise.
The library file
quoter.tf defines some
useful quoter commands
that are shortcuts for some common uses of
quote.
The following is a list of some nearly equivalent pairs of commands:
- /quote -S -dexec 'file
- /load file
- /quote -S -decho #args
- /recall args
- /quote opts
`/recall args
- /quote opts
#args
Examples:
/quote -1 :reads about '"/usr/dict/words" in the dictionary.
This sends off lines like:
:reads about aardvark in the dictionary.
:reads about aardvore in the dictionary.
with one-second delays between lines.
/quote -S /echo !ps -gux
This displays the output of the system command "ps -gux" by echoing it
locally, immediately.
/quote -0 :heard: #-wCave /2 *pages*
This sends off quickly:
:heard: [the last 2 lines from Cave that contain "pages"]
/quote :is using `/version
will tell everybody in the room what version of TF you're running.
/quote -wlpmud -dsend 'prog.c
will send the file "prog.c" to the world "lpmud" (without any
interpretation of leading spaces, lines like "/* comment */", etc.)
See: processes,
quoter.tf,
history,
command subs,
/load,
/recall,
/sh,
/sys,
/paste
Back to index
Back to tf home page
Copyright © 1995 - 1999 Ken Keys