adjmat |
produce adjacency matrix |
arccentre |
compute the centre of an arc |
artimes |
set last modification times for files of an archive |
arupdate |
update an archive library |
ascii |
print a table of the ASCII character set |
bfsic |
build file system integrity check and db maintenance |
bp |
deliver source code boiler plate |
c% |
cush link that translates _%_ in command |
cancreat |
check if file can be created |
cc_g |
gcc interface that eliminates gratuitous warnings |
cc_z |
cc interface that eliminates gratuitous messages |
cerrs |
parse input extracting cc errors and warnings |
chkfile |
check all files exist killing argument pid on failure |
chstat |
change the status of files named in list or arguments |
cleanilog |
clean up an instal.log file |
clrstr |
output terminal clear string in readable form |
clump |
convert file:lineno input to ranges |
cmdcmp |
compare the outputs of two commands |
com |
compile or process file using embedded command |
commw |
print input terms not in dictionaries |
company |
output company information |
condln |
link or copy file1 to file2 |
confvrs |
create or compare qvrs config file |
contax |
output selected contax database entries |
conv |
convert input characters to readable form |
count |
produce numbers |
cpifdif |
compare new and old and copy if different |
ct |
cut input into cut file |
cush |
could (could not) use shell interface |
depsmap |
create file mapping suffixes to mkdeps file |
detox |
remove toxic waste normally found in dos files |
dirlist |
produce list of all directories for input file list |
dirname |
output directory pathname for files |
dirsetup |
set up a directory from prototype file |
divide |
split files at specified pattern |
dmpdeps |
dump or test deps object |
dosmap |
change Unix paths to DOS paths |
double |
output differing lines of files separated by tab |
dry |
run dhrystone tests |
elimso |
eliminate n/troff inclusions |
environ |
list args, uid/gid, cwd, open files, env, and ignored sigs |
envset |
output environment setting commands |
envstd |
list arguments, open files and ignored signals |
fcmp |
compares new and old |
fdate |
output formatted date string |
fexists |
output file names that match specified attributes |
ffill |
fill in suppressed fields |
filelist |
maintain a file list and their collective modification time |
finclude |
output file resolving includes |
finda |
find and replace Ada variables |
findc |
find and replace C variables |
findf |
find and replace tabbed fields |
findw |
find and replace words |
fixflist |
remove non-existent files from a file list |
flcomm |
comm(1) like but columns put into files |
fnd |
find a command |
fndstr |
find a string in a file and output offset |
form |
text formatter and macro processor |
fparens |
check bracket, brace and double quote balancing in form input |
ftest |
test argument file attributes |
g |
process go files |
go |
detach a command |
goes |
view or remove jobs from go message files |
gomonitor |
display josh halt files as updated and other files |
gotstr |
output names of files that contain argument string |
grpsort |
sort groups of lines specified by ranges |
hhmmss |
output a banner of the time |
hoff |
hell of a lot faster than nroff |
howto |
output selected howto information |
incls |
dynamic dependency tracker |
instal |
meticulously install a file and audit it |
instdir |
install a directory |
instfls |
install files, but only if necessary, according to script |
jlines |
join up selected lines |
josh |
a job shell |
kdbm |
extract from or add to DBM database |
l |
list files in columns |
lash |
long argument list shell interface |
lc |
list files by type in columns |
lcmp |
compare two files |
ldbm |
extract from or add to DBM line database |
ledmp |
display current lefile values |
leset |
set up line editing keyfile |
liborder |
process nm of a library to produce dependency graph |
libs |
output information on libraries used by the named files |
lines |
print first N and last M lines |
linked |
list files with multiple links |
lls |
ls for input files with selected fields output |
lninsert |
replace characters in master by lines from source |
lntree |
create tree of symbolic links to input file list |
man3db |
apply trg script to selected items from man3 TIPs database |
manprep |
prepare manual sections for qef info tool |
mimk |
issue updating commands according to a dependency script |
mkalltraits |
run mktraits on remote hosts |
mkddt |
create ddt declaration |
mkdeps |
compile deps scanner file |
mkerrs |
process error databases to produce other source |
mkopts |
create options header file |
mkqtree |
set up new qef tree |
mkquete |
produce manual section index |
mksolib |
create shared library externs list |
mktraits |
compile traits files |
mkvernum |
create or change version string |
mnfadd |
add a new manifest to manifest database |
mnfchk |
check manifest database for syntax and consistency |
mnfcmp |
compare two manifests |
mnfdb |
output manifest database release information |
mnfdel |
delete releases from manifest database |
mnfput |
output a manifest or manifest database |
necho |
echo with escape interpretation |
numb |
produce numbered lines |
olex |
lexical analyser builder |
p4files |
list perforce files for the current root |
p4mnf |
list p4 files for the current root |
pa |
output, list, or delete cut files |
parmsdb |
output parms database in variety of formats |
pathclash |
produce list of duplicated executables in path |
pathto |
map argument file to special directory |
pdirs |
directory stack manipulation for shells without pushd |
ph |
output phone numbers for selected contax database entries |
putifdif |
copy input to output file if different |
qconfset |
add variable setting to the conf.vrs file |
qd |
shell alias/function to chdir using selected qdsrv database entry |
qdchk |
check host's qdsrv database entries |
qdid |
assign qdsrv ident and/or bind to path |
qdmgt |
general qdsrv management interface |
qds |
select and print entries from qdsrv database |
qdsrv |
qef project database server |
qdupd |
add path to qdsrv database |
qed |
somewhere between a line editor and a command interpreter |
qedbufs |
output qed save file structures |
qef |
the driver |
qefdirs |
qef script generator for multiple directories |
qefgui |
run the qef qui |
qefinfo |
run the qef info tool |
qefpp |
the qef macro processor |
qenv |
output environment variables in sorted usable form |
qfunc |
output selected qfunc function/alias file |
qgdiff |
graphical file difference viewer |
qhost |
qtree host server |
qhy |
report why a target was rebuilt |
qlex |
interface to lex |
qmsdev |
Microsoft Developer's Studio project file generator |
qmsg |
send a message or mail to designated users |
qremote |
run a command on a remote host (if necessary) |
qrep |
another grep |
qsg |
the primary qef script generator |
qsgcomp |
compiles a qsg script to object |
qsgdump |
dump a qsg object file |
qsh |
qef shell command interpreter |
qtreeinfo |
output information on $QTREE and its directories |
quete |
list x_db topics and quete.db entries that match patterns |
qvrs |
process the qvrs files |
qvrsdmp |
process qvrs binary file |
qvrsexpr |
evaluate and output qvrs expressions |
qyacc |
interface to yacc |
r90 |
reflect lines around diagonal |
rc |
windows resource compiler |
rcslocks |
report the RCS locked files in a directory |
realdir |
output real directory name for argument directory |
recur |
execute a command repetitively |
rep |
another grep |
resort |
build new output in order specified by input |
revl |
reverse input lines |
rls |
recursive list of files |
rmlist |
remove files named in input |
rmnotnamed |
remove all files not named by arguments |
rmwhite |
output rpl script to remove redundant white space and newlines |
rootvrs |
create or modify the root.vrs file |
rotf |
select fields of input lines for output |
rpl |
replace, print, or delete named lines |
rtabs |
align fields by inserting padding |
samefile |
check if two paths refer to same file |
sdba |
output statistics about sdbm database |
setbytes |
set specified offsets to strings |
sfdchk |
check strfix dictionaries for valid patterns |
sfsic |
source file system integrity check and db maintenance |
shfix |
process input file incorporating output of embedded commands |
shuffle |
shuffle input lines and output |
sls |
source path ls |
snm |
standardized nm output |
srclist |
check the srclist._ file |
strfix |
replace variables according to replacement dictionary |
sttyek |
set or display saved stty erase and kill chars |
subdist |
create sub-distribution from master file lists |
summarize |
summarize selected fields |
sumup |
output summations of selected input fields |
suprep |
suppress repeated fields |
sysnm |
output symbolic system name or check if it matches arguments |
system |
output system name or check if it matches arguments |
tabrpl |
replace tabs by spaces or vice versa |
tchown |
change ownership and mode according to a template |
tdbkeys |
list TIPs database index keys and/or files |
tdbm |
create TIPs key files |
tdbrg |
apply trg program against selected TIPs DBM database entries |
ted |
TIPs file editor |
termfnd |
check if termcap/terminfo entry exists |
termsa |
list all Ada variables in files |
termsc |
list all C variables in files |
termsf |
list all tabbed fields in files |
termsw |
list all words in files |
tf |
output name of non-existent comma file |
tildes |
convert between symbolic and real character representations |
timeout |
execute a program with a time limit |
tlist |
formated listing of TIPs data base files |
tmkprof |
create new TIPs data base profile |
topolsrt |
topologically sort input |
touchfiles |
list or create touch files |
tprof |
output TIPs profile in various formats |
traits |
output traits table |
transl |
translate input fields |
treedirs |
mkdir selected or all sub-directories of a qef tree |
trg |
template driven TIPs report generator |
trgdmp |
print trg object file |
trgmk |
compile trg script |
tscan |
interactive TIPs data base scanner |
tstrhash |
test strhash hashing |
typset |
interface to typesetter and printing packages |
untouch |
set file times |
upd |
update conventionally named versions of files |
upto |
print selected lines from named files |
vcc |
create, compile, link, and remove version string source file |
vci |
version control system interface |
vernumcomp |
compress the mkvernum database |
wcci |
windows c compiler interface |
whats |
whats 2 + 2 |
wmode |
write-protect files |
wordidx |
output input lines followed by lines indicating word count |
wot |
output embedded sccs id strings |
x-contax |
contax use and data bases eXplanatory D.B. |
x-eml |
form eml macros eXplanatory D.B. |
x-form |
form macros and syntax eXplanatory D.B. |
x-html |
html qsg library eXplanatory D.B. |
x-ldeps |
deps library eXplanatory D.B. |
x-ldtree |
x_db database describing routines of the -ldtree library |
x-lledit |
ledit library eXplanatory D.B. |
x-lqvrs |
qvrs library eXplanatory D.B. |
x-ltc |
tc library eXplanatory D.B. |
x-ltips |
tips library eXplanatory D.B. |
x-man |
the -man macro set eXplanatory D.B. |
x-qed |
qed commands and facilities eXplanatory D.B. |
x-qef |
QEF facilities and tools eXplanatory D.B. |
x-qefdirs |
qefdirs eXplanatory D.B. |
x-qefeg |
prototype qef files eXplanatory D.B. |
x-qefgui |
qef graphical user interface eXplanatory D.B. |
x-qefpp |
qef preprocessor controls and macros eXplanatory D.B. |
x-qfsic |
file system integrity (fsic) package eXplanatory D.B. |
x-qmisc |
Q-Tree miscellany eXplanatory D.B. |
x-qproc |
software process procedures eXplanatory D.B. |
x-qsg |
qsg and its support library eXplanatory D.B. |
x-qvrs |
qvrs variables, facilities, and files eXplanatory D.B. |
x-ted |
ted the TIPs editor eXplanatory D.B. |
x-trg |
TIPs trg functions eXplanatory D.B. |
x-tscan |
tscan facilities and commands eXplanatory D.B. |
x-xfig |
xfig qsg library eXplanatory D.B. |
x-zr |
qed function library eXplanatory D.B. |
x_db |
x_db database front end |
xdbmk |
create an x_db data base |
xdbs |
list all or specified x_db databases or all their topics |
xfinterp |
process -x flag outputs |
xtty |
convert stty(1) output to full explanations |
younger |
test if files younger than specified time |
zfill |
zero fill digit string |
adjmat
produce adjacency matrix
adjmat reads the argument files (defaults to the standard
input) and produces an adjacency matrix of the relation-
ships expressed by the input lines.
Input lines consist of white space separated words, the first of
which is taken as the label. The balance of the line's words
are the nodes to which the label is adjacent.
The output is an adjacency matrix with adjacencies marked with an X.
See adjmat(1) for an example.
See also: adjmat(1) adjmat(-x)
arccentre
compute the centre of an arc
arccentre computes the centre point of an arc for use by Arc(x-xfig).
The arguments are three points expressed in xfig(1) units,
and the output is two floats expressing the centre point.
If the points are colinear (i.e., not an arc), arccentre
aborts with a suitable diagnostic output.
See also: arccentre (1) arccentre (-x) Arc(x-xfig)
artimes
set last modification times for files of an archive
artimes reads the argument ar(1) file and for each member file, sets
the modification time of the corresponding file to modification time
as stored in the archive.
This is used to create realistic modification times for files that are
extracted from object libraries for versions of make(1) that do not
understand how to process archive libraries.
artimes is unnecessary if ar supports the -o flag.
See also: artimes(1) artimes(-x) ar(1)
arupdate
update an archive library
arupdate is used as an interface to ar(1) in library building scripts.
arupdate is used instead of ar as it is an interface is based on a
specification of what should be in the library, from which it
determines what actions to take to bring the library up-to-date.
arupdate's arguments are interpreted to create a list of the
files that are to be part of the archive. The actual arguments may
be files to be included, files that contain the names of files to
be included, or the names of other archives, some or all of whose
elements are to be included.
Given this member list, arupdate checks the archive to determine
the files that need to be removed (i.e., in archive but not the list)
the files that need to be replaced (i.e., existing file's time-stamp
is not equal to that in the archive), and the files to be added
(i.e., in the list but not in the archive).
Note: A file named in the argument generated member list need not
exist, provided it is already in the archive.
arupdate then invokes ar once to delete member files that are no longer
part of the library or will be re-added and a second time to add
in the new or replacement member files.
It will then remove all the files that have been added (other than
those extracted from other archives) unless the -k flag has been
specified.
arupdate also supports an option to add a mkvernum generated
version file to the archive.
Note: If the -V module is specified, the .c module that is created (i.e.,
_vmodule.c) is compiled using the _F_mkvernum_cc[module]
or _F_mkvernum_cc flags.
See also: arupdate(1) arupdate(-x) ar(1) mkvernum _F_mkvernum_cc(x-qvrs)
ascii
print a table of the ASCII character set
ascii outputs the table of ASCII characters in a variety of formats,
as in:
|000 nul|001 soh|002 stx|003 etx|004 eot|005 enq|006 ack|007 bel|
...
|170 x |171 y |172 z |173 { |174 | |175 } |176
|177 del|
Options exist to produce the hexadecimal or decimal values, of the
values for selected characters, as in:
% ascii a.9
a 141 097 61 lx
. 056 046 2E p
9 071 057 39 n
See ascii(-x) for list of type keys used for the fifth column of
the above output (e.g., 'l' for lower case, 'p' for punctuation).
See also: ascii(1) ascii(-x)
bfsic
build file system integrity check and db maintenance
bfsic is used to compare the lists of existing installed and object
file systems against the FSIC database inst.fl, objs.fl, deviates.fl,
except/<sysnm>.fl, and <Q>/lib/bfsic.cf.
Typically bfsic is used in the fsic(x-qsg) script to create the
,p.errors, ,i.tmps, and ,o.tmps files, which in turn are used
to correct the file systems and database.
Note: The fsic directory is typically in @QefAdm/fsic in the
root directory.
See also: bfsic(1) bfsic(-x) FSIC(x-qfsic) inst.fl(x-qfsic)
objs.fl(x-qfsic) deviates.fl except/<sysnm>.fl <Q>/lib/bfsic.cf
bp
deliver source code boiler plate
When bp is invoked with an argument X, it searches for a file called
Bp.dir/X in the directories named by $PATH. If such a file is found
and it begins with the sequence `#BP' followed by a tab, the file
is copied to the standard output, after replacing certain `%%'
sequences with run-time values (e.g., the date or user's name) or
interpretations.
bp is used to retrieve and output prototypes of various files, text
or code segments.
If bp is invoked without arguments, it outputs a list of all the
bp files available.
howto is a link to bp that searches for Howto.dir/X files.
Note: Many of the boiler plates relate to the qef system.
See x-qefeg.
See also: bp(1) bp(-x) howto qfunc new-bp(x-qmisc) New-Bp(x-qefgui)
c%
cush link that translates _%_ in command
c% is an alias for cush that assumes the -% flag to
save typing six characters.
For a full description see cush(1).
See also: cush c%(1) c%(-x) cush(1)
cancreat
check if file can be created
cancreat checks that the argument file can be created, or
opened for writing (if it already exists).
The exit status is 0 if the requested access is permitted
or possible. Otherwise it is -1.
If -d specified, then check is that files may be created
in the directory file. If file is not specified, -d is
assumed and file defaults to the current directory (i.e., .).
See also: cancreat(1) cancreat(-x) ftest test(1)
cc_g
gcc interface that eliminates gratuitous warnings
cc_g is a link to cc_z that eliminates the numerous messages
generated by gcc that are of little or no value or cannot be resolved.
The messages to be eliminated are those matched by regular expressions
associated with cc_g in the file <qtree-root>/lib/cc_z.cf.
See also: cc_z cc_z(1) cc_z(-x)
cc_z
cc interface that eliminates gratuitous messages
cc_z and its links are interfaces to the standard C compiler that
filters cc output to eliminate various gratuitous messages such as
the copyright notices and warnings that cannot be resolved. The
file <qtree-root>/lib/cc_z.cf should contain lines that indicate the
real compiler program to be used and regular expressions to be
applied. That file contains comments that describe its contents in
more detail.
See also: cc_g cc_z(1) cc_z(-x) cc_z.cf
cerrs
parse input extracting cc errors and warnings
cerrs reads its input, extracts C compiler diagnostic messages,
converts them to a canonical form of file, `:', lineno, `:', and
message, optionally converts file names to canonical forms using a
mapping mechanism, and outputs the result. This allows one to feed
the output of a large qef or make session to cerrs and get a
usable list of the diagnostics.
See also: cerrs(1) cerrs(-x)
chkfile
check all files exist killing argument pid on failure
chkfile checks that its argument files exist or are writable (if -w
specified. If any do not exist (or unwritable), it sends a SIGTERM to
the argument pid process and exits with status -1. If the pid
argument is not specified, chkfile just exits with a diagnostic
message and a non-zero status.
If all the argument files exist, chkfile exits silently with status 0.
chkfile is used within shell scripts to abort the script if a check
file is removed as in:
touch CHK$$
echo To terminate this program, remove CHK$$
while true ; do
: commands ...
chkfile -p $$ CHK$$
done
See also: chkfile(1) chkfile(-x) ftest test(1)
chstat
change the status of files named in list or arguments
chstat is a combination of chmod(3), chown(3), and chgrp(3) that
processes the files named in argument files or in the standard input.
chstat is useful for processing large numbers of files named by
some pipe line or file.
See also: chstat(1) chstat(-x) tchown wmode chmod(1) chgrp(1) chown(1)
cleanilog
clean up an instal.log file
Whenever instal(1) is run, if the qvrs(1) variable @InstLog is set,
instal appends an audit trail record to the @InstLog file (usually
instal.log at the base of the Object tree). This audit file can grow
substantially and may contain many obsolete records. cleanilog may be
used to eliminate obsolete records and optionally remove records
that refer to non-existent files from an instal audit trail.
To update the current tree's @InstLog file, purging references to
non-existent files, use:
cleanilog -Iuvp
See also: cleanilog(1) cleanilog(-x) instal InstLog(x-qvrs)
clrstr
output terminal clear string in readable form
clrstr writes (to the standard output) the string of characters that
will clear the screen of the terminal as specified by the term
argument (default $TERM).
By default the string is output in a printable form (e.g., ESC
(octal 033) shown as "\33", newline output as "^J").
The -n suppresses this translation and the -q flag outputs
the string in as a qed string.
See also: clrstr(1) clrstr(-x) qed clear(1)
clump
convert file:lineno input to ranges
clump reads its input, which should be a series of lines similar to
that produced by qrep's -n flag (i.e., contain the file name, a
colon, and the line number, a colon, and the contents), as in:
file:14:This is the first line of a clump
file:15:This is the second line.
newfile:200:This is a single line clump
This is also the form of output produced by many other programs such as:
lines, findc (et al), and rpl.
Groups of input lines that refer to a series of sequential lines are
output as "clumps".
Clumps are output as the file name, a colon (':'), the line number
of the first line. If it is a multi-line clump, the line number
is followed by a comma and the number of following lines in the clump.
For the above input, the output would be:
file:000014,1:
newfile:000200:
This output may be input to rpl with the -sa flags to get
the addressed lines.
See also: clump(1) clump(-x) rpl qrep
cmdcmp
compare the outputs of two commands
cmdcmp compares the output of a command to the output of another
command, the contents of a file or the standard input. It can also
compare the contents of a file to the contents of another file or the
standard input, although that is just duplicating the capability of
cmp(1) or fcmp.
cmdcmp was created to circumvent the problems of the ambiguity of the
exit status of a pipeline and the problems associated with the
management and removal of temporary files.
See also: cmdcmp(1) cmdcmp(-x) fcmp cmp(1)
com
compile or process file using embedded command
com extracts specially identified command lines, called com lines,
from its argument files, processes those lines to replace special
strings by parts of the argument file name or extracted from the
qvrs(1) files, and interprets the resulting line as a shell command.
A com line is a line within the first 1024 characters of the file that
contains the string `/*^' or `/*%'. The balance of the line is
processed to replace `^' characters followed by special strings by
special interpretations (as listed by com -X). The resulting line
is then executed as a sh(1) command.
<qtree-root>/lib/comlines contains the com macros.
See also: com(1) com(-x) qvrs
commw
print input terms not in dictionaries
commw reads its input and outputs all terms in the input that are
not in one of the dictionaries.
The input file and dictionaries must be in the order normally
generated by termsw.
A dictionary term is equivalent to an input file term if the
dictionary term is equal to the lower case version of, or the
unpunctuated version of the input file term.
commw typically used to prepare a replacement dictionary for findw
as it understands the punctuation, accents, and capitalization rules
of that program.
Note: commw was originally created to compare words found by
termsw against dictionaries to determine words to be
corrected. Given the availability of fairly good versions
spell(1) one is probably better of using spell to
find terms that are questionable and then use that list
to create the findw replacement dictionary.
See also: commw(1) commw(-x) findw termsw <Q>/lib/words
company
output company information
company uses the information specified in the -i specified strfix
dictionary company-info (defaults to
/.qtree/company.cf or
<Q>/data/company.cf) and outputs that information according
to the format specified by the -f file or format.
The result is written to specified outfile or the standard output.
Note: bp also consults the company info file.
See also: company(1) company(-x) bp <Q>/data/company.cf
/.qtree/company.cf
condln
link or copy file1 to file2
condln, given two argument files f1 and f2, ensures that f1 is
linked or copied to f2, even if f2 already exists. condln is
used instead of ln(1) as that program fails under a number of
conditions that condln avoids (e.g., f2 exists or is on a different
file system).
In summary, condln tries to ensure that file2 is either a link (hard
or symbolic) to file1 or is a link to a copy of file1 or is itself a
copy of file1.
See also: condln(1) condln(-x) ln(1) mklink(x-qsg)
confvrs
create or compare qvrs config file
The second file processed by qvrs(1) is the file that the user
provides or names to set configuration parameters. The actual
file used is based on @ConfVrs or searching for conf.vrs or
confdefl.vrs in the directories named by @?ConfVrsPath.
confvrs provides a number of services with respect to the current
config file and the default version. The default behaviour is to
output the name of the current config file and the names and values
for the variables it sets.
Other facilities (selected by flags) show the variables and values
for the default config file (-D), show the differences between the
real and default config files (-d); and copy the default config file
to conf.vrs (-o).
See also: confvrs(1) confvrs(-x) qvrs qconfset mkqtree ConfVrs(x-qvrs)
ConfVrsPath(x-qvrs) conf.vrs(x-qvrs) confvrs/(x-qvrs)
confdefl.vrs(x-qvrs) confdefl-eg(x-qefeg)
contax
output selected contax database entries
contax is a TIPs application program that scans the specified contacts
database and outputs selected entries in the selected format.
As such this program can be used for a variety of applications. For
example, it can retrieve and display the phone numbers and/or
addresses for selected names. It can produce form letters in which it
fills in the title, affiliation, address, and salutation for selected
names and/or keywords. Using the keyword search facility it can be
used for distribution lists to drive electronic mailings. contax
selects items from the specified contax data base, and outputs the
selected entries in the specified format.
See also: contax(1) contax(-x) ph x-contax TIPs
conv
convert input characters to readable form
conv outputs a line, such as the following, for each character
(excluding the nulls) in the arguments.
Character x : Octal 170 Decimal 120 Hex 78 Binary 01111000
If no arguments are given, stty(2) is used to set the terminal into raw
mode (so as to get all the bits and to suppress any interpretation)
and a single input line is read, up to the first newline, carriage
return or ctrl-d. Then lines of the above form are output for each of
the characters in the read line. The line for the terminating
character is not output, unless it is the only character in the input
or the -e flag is given.
conv's major use is to determine what all those strange keys on a
keyboard actually deliver. It is frequently used when designing a
leset file or a qed terminal file.
See also: conv(1) conv(-x) qed leset
count
produce numbers
count outputs the integers from a specified start (defaults to 0)
to a specified stop (defaults to 32767) in using the specified
increment (default 1 or -1 (if the start > stop).
A printf(3) format can be specified for the output.
count was added to the QEF product at a client's request, for
what I know not, but it can be useful.
See also: count(1) count(-x)
cpifdif
compare new and old and copy if different
cpifdif is a very fast implementation of
cmp -s new old || cp new old
without the complications that arise due to cmp's exit codes.
It is used extensively to install new versions of a file only
if the file is changed.
See also: cpifdif(1) cpifdif(-x) cmp(1) putifdif cmdcmp
ct
cut input into cut file
ct copies its input files or the standard input into a temporary
file in the directory named by $CTDIR or
/.qtree/ctdir.
The companion program pa can be used to retrieve the saved file
by explicit basename or an age index (0 for the youngest, 1 for
the next youngest, etc.)
See also: ct(1) ct(-x) pa
cush
could (could not) use shell interface
cush simply runs the argument command, which should consist of a
program and the arguments to that program. Flags and options allow
command line specification of the setting and unsetting of environment
variables, redirection of I/O, chdirs, special process management, and
process attributes often not available or not easily done using the
standard shells.
One of the more important cush options is to facilitate the saving
of the input in a temporary file, the name of which is inserted into
the argument command. This facilitates using commands that require a
file and cannot process the standard input. cush is also used to
do redirection of I/O in command processors which do not support I/O
redirection, when the redirection cannot be expressed in the current
shell's context (i.e., on a remote machine or as a different user), or
when doing so imposes an additional overhead (e.g., forking a shell).
cush has a -E flag that allows the specification of an envset
environment set to be applied before executing the program. This
option can thus be used to change $PATH or to specify an environment
on a remote host as is done by qremote.
Note: c% is a link to cush that converts any "_%_"s in the
argument command to spaces. It's actually equivalent
to cush invoked with the -% flag.
See also: cush(1) cush(-x) envset qremote c%
depsmap
create file mapping suffixes to mkdeps file
depsmap processes the argument files which must be dependency state
tables and description files as produced by mkdeps. The Class name,
Description field, and the Suffixes list for each file are extracted
and saved. Once all the files are processed, depsmap writes the
resulting lists to the output file ofile (defaults to the standard
output).
The resulting file is used by other programs to map a file to the deps
class to be used to process the file. The depsmap output file is
normally installed as <qtree-root>/lib/deps/deps.map.
See also: depsmap(1) depsmap(-x) mkdeps dmpdeps incls deps.map
detox
remove toxic waste normally found in dos files
detox removes any carriage returns before a new line and a
control-z at the end of its input. Alternatively it can insert
the carriage returns and control-z.
An option is provided to change files in situ.
dirlist
produce list of all directories for input file list
dirlist reads pathnames from its input files and outputs a unique
sorted list of all the directories involved in the input pathnames.
Given the path name dir1/dir2/file, dirlist would output:
dir1
dir1/dir2
dirlist is used to produce the list of directories that may have
to be processed to deal with named or listed files.
See also: dirlist(1) dirlist(-x) dirname(1)
dirname
output directory pathname for files
By default, dirname outputs the directory file for each
argument path or, if the -f flag specified, for each file
name contained in the argument file. If no file arguments
are given, the file names read from the standard input are
processed. If any -p, -d, or -l flags are specified, the
selected file name parts (the simplified pathname -p, the
directory name -d, and the leaf name -l) are output in
that order, separated by tabs.
The named files are reduced to their simplest form by
removing redundant parts of the name (e.g., ``/./'',
``/X/../''). the resulting path is then split into the
directory and file name parts.
See also: dirname(1) dirname(-x) basename(1)
dirsetup
set up a directory from prototype file
The input files to dirsetup consist of lines specifying directories,
files and their contents, and annotations. When dirsetup processes
such a file, dirsetup creates the specified directories and files in
directory dir. dirsetup will not overwrite any existing file unless
the -o flag is specified. Any annotations are output to the standard
output.
dirsetup files are usually used to define file systems for special
applications such as the qef tutorials or a generic qef administered
project.
In the absence of any arguments or flags, dirsetup lists the currently
available dirsetup files.
Currently the dirsetup databases are:
dotqtree set up for a user's .qtree directory
fsic files of the file system integrity check
miniproj files for a minimal qef project
newproj infrastructure files for a qef project
qeftut1 qef tutorial set # 1
qeftut2 qef tutorial set # 2
qeftut3 qef tutorial set # 3
qegappl example qef application package
qeglibeg example qef library set up and mgt.
qegqsl example of project specific qsglib
See also: dirsetup(1) dirsetup(-x) new-dirsetup(x-qmisc)
dirsetup-sets(x-qefeg)
divide
split files at specified pattern
divide reads the argument files (defaults to the standard
input) and splits the output into files named prefix001,
prefix002, ... (prefix defaults to ``x'').
The files are split at the <num>th line if no linemarker
is given. Otherwise, the files are split at the first
line after (if -a specified) or the last line before (if
-b specified) a line that matches the regexp(x-qmisc) pattern
specified by the -p flag.
See also: divide(1) divide(-x) split(1) regexp
dmpdeps
dump or test deps object
Dependency files are created by the mkdeps program. They contain a
state table to find and extract embedded dependencies such as the
`#include' of the C programming language plus information used to
convert an embedded `included' symbol to a file.
The dependency suffix map file, deps.map, is used to map file names to
deps files. Basically it contains the names of the supported deps
files and patterns that match the files that it processes.
dmpdeps outputs readable representations of either a selected
dependency file or the dependency suffix map file.
Some useful commands:
dmpdeps -m # show list of current deps files
dmpdeps -cc # dump information about c deps file
dmpdeps -s -c tex # dump source for tex deps file
See also: dmpdeps(1) dmpdeps(-x) mkdeps incls depsmap deps.map
dosmap
change Unix paths to DOS paths
dosmap reads its argument files (defaults to the standard input) and
copies what was read to ofile (defaults to the standard output),
converting any strings embedded in ``%%''s to their DOS path names as
mapped by roots.map files.
See also: dosmap(1) dosmap(-x) dospath(x-ldtree) roots.map
double
output differing lines of files separated by tab
double reads lines from its two input files in parallel. If the input
lines differ, they are output as a single line with a separating tab.
double is commonly used to produce a replacement dictionary for other
tools such as findf(1).
See also: double(1) double(-x) comm(1)
dry
run dhrystone tests
dry runs the dhrystone tests which are an attempt to measure sure
the performance of the host machine. For example:
% dry -l 5hk
Dhrystone(1.1) time for 500000 passes = 4
This machine benchmarks at 125000 dhrystones/second
As might be deduced this is an old program on an old platform.
Upping the number of loops may increase the accuracy.
See also: dry(1) dry(-x)
elimso
eliminate n/troff inclusions
elimso is used to eliminate n/troff ".so" commands from
the input by replacing the containing line by the named
file. Also supported is the facility to incorporate the
output of shell commands.
It is provided for use by typset.
Note: The -S option specifies that the qvrs variable @SrcPath
directories are searched for files to be included.
See also: elimso(1) elimso(-x) typset soelim(1) qvrs
environ
list args, uid/gid, cwd, open files, env, and ignored sigs
environ outputs the argument list (including the first argument) in an
unambiguous form (using `\ddd' to represent unprintable characters),
lists the file descriptors that are open, the signals that are not
SIG_DFL, the real and effective uids and gids, the umask setting, and
the environment variables. The output is written to /dev/tty to
ensure its visibility.
environ was created to test that programs were setting up the correct
signals, arguments, and files before forking and execing another
program. This is usually done by moving the program of interest (i.e.,
the program that will be exec'ed) to a temporary location, linking or
copying environ to the old program name and running the parent program.
Alternatively one may be able to link environ to the program name
in an earlier directory of the $PATH.
See also: environ(1) environ(-x) envstd
envset
output environment setting commands
envset is used to extract a named set of environment variables settings
and unsettings specified in
/.qtree/envset.cf, <qtree-root>/data/envset.cf,
and <qtree-root>/lib/envset.cf).
envset outputs the selected sets as a series of sh or csh commands
to perform the various settings/unsettings.
envset -x explains the syntax of the envset file.
It is convenient to set an alias or shell function Ev to facilitate
running envset and interpreting its output.
In the csh use:
alias Ev 'eval `<qtree-root>/bin/envset -cNQ \!*`'
In sh or one of its clones, use:
Ev () {
eval $(<qtree-root>/bin/envset -NQ $*)
}
Note: There is a qfunc option Ev which will deliver the
appropriate setting.
So then Ev EnvSet will changes the current shell's environment to that
specified by the argument.
The fully rooted path is used so that $PATH does not need to be set
correctly for Ev to work. The -Q flag will set $QTREE to the
the program's path name minus "/bin/envset" (i.e., <qtree-root>).
Note: qremote executes cush with the flag -E envset, where
envset is usually the value of @QremoteEnv as extracted
from the root.vrs file.
Note: cush, josh, and qsg all have a -E flags that selects an
envset for interpretation before executing the argument command.
QremoteEnv specifies the envset to be loaded on the remote
system, actually done via cush.
See also: envset(1) envset(-x) cush josh qsg qfunc $ENVSETS
qremote QremoteEnv(x-qvrs)
envstd
list arguments, open files and ignored signals
envstd is a link to environ. environ lists its arguments, open
files, real and effective uids and gids, its umask setting and its
environment variables. environ writes its output to a file
(usually /dev/tty) opened specifically to ensure its visibility.
When environ is invoked as envstd, the various outputs can be
selected by flags and the output is written to the standard output.
See also: envstd(1) envstd(-x) environ
fcmp
compares new and old
fcmp is a link to cpifdif and is equivalent to specifying a -n or -N
to that program. Basically, fcmp compares the files new and old and
exits with status 0 if they are identical, and 1 otherwise.
fcmp is basically the same as cmp(1) except faster, consistent, and
providing some important options.
See also: fcmp(1) fcmp(-x) cpifdif cmp(1)
fdate
output formatted date string
fdate formats a specified time -- defaults to the current time --
according to a specified format. The format argument consists of `^'
followed by a single letter to select the element of the time to be
output. For example:
fdate '^a ^h ^d ^T ^c^y'
would output:
Mon Jan 31 05:48:21 2000
The command:
fdate -X
will output the format keys and their descriptions.
fdate predates the extension of date(1)'s extension to provide
similar functionality, however, date is limited to displaying the
current time, whereas fdate can be used to output the date for
an arbitrary time such as the time stamps stored in qmkhist._ files.
See also: fdate(1) fdate(-x) date(1)
fexists
output file names that match specified attributes
fexists is used in the FSIC package qef script to filter a list of files
to remove those that aren't empty. This is used in a pipeline with
rmlist to remove the empty files.
fexists can also be used to select input paths that are or are not
files, directories, have a specified mode, have been modified within
a specified time, or are empty.
See also: fexists(1) fexists(-x)
ffill
fill in suppressed fields
ffill fills in empty fields with the contents of the most recent
non-empty corresponding field in a previous line. In effect it is the
inverse of suprep.
The fields to be filled in are selected by the `-0..9' argument
(defaults to `-0'). For example:
ffill -03
specifies that the zeroth and third fields are to be filled in. All
other fields are to be copied out directly.
See also: ffill(1) ffill(-x) suprep double
filelist
maintain a file list and their collective modification time
filelist maintains the list of files in the argument file flist,
optionally reports gains or losses and sets flist's time stamp
according to the status of the files it names.
srclist is a special case link to filelist that uses the file
called srclist._ and implies the flags -mnuv.
See also: filelist(1) filelist(-x) srclist srclist._
finclude
output file resolving includes
finclude copies its input files to its designated output, replacing any
lines that begin with `include' (or a specified string) by a header line,
the contents of the included file, and a trailer line.
finclude is often used to prepare input for other processes, in
particular strfix.
See also: finclude(1) finclude(-x) strfix
finda
find and replace Ada variables
finda searches the argument files for ADA variables that
are named in the first field of the argument dictionary file and
replaces those found terms by the replacement field.
finda is almost equivalent to findc and a full description
of the flags and processing is given in findc(1).
termsa will produce a list of all the ADA variables found
in the files given as input.
See also: finda(1) finda(-x) findc(1) termsa findc findf findw
findc
find and replace C variables
The four find[cfwa] programs search the argument files (defaults to
the standard input but see -f) for terms given in the argument
dfile (dictionary file). findc searches for C variables; findf
searches for fields; findw searches for words, and finda searches
for ADA variables. When a term is found, if the dictionary file
specifies a replacement string (follows a tab character) the term is
replaced by that string.
The default (in absence of any -cru flags) action is to
copy any lines that contain terms given in the dfile to
the standard output.
The find? programs are particularly useful for creating input
to rpl.
termsc will produce a list of all the C variables found
in the files given as input.
See also: findc(1) findc(-x) termsc finda findf findw rpl
findf
find and replace tabbed fields
findf searches the argument files for fields that are named in the
first field of the argument dictionary file and replaces those found
terms by the replacement field.
Fields are tab separated strings.
findf is almost equivalent to findc and a full description
of the flags and processing is given in findc(1).
termsf will produce a list of all the fields found in the files
given as input.
See also: findf(1) findf(-x) termsf finda findc findw
findw
find and replace words
findw searches the argument files for words that are named in the
first field of the argument dictionary file and replaces those found
terms by the replacement field.
See termsc(1) for a definition of word.
findw is almost equivalent to findc and a full description
of the flags and processing is given in findc(1).
termsw will produce a list of all the words found in the
files given as input.
See also: findw(1) findw(-x) termsw findc(1) termsc(1) finda findc findf
fixflist
remove non-existent files from a file list
fixflist reads in filelist as a list of white space separated
pathnames. Any pathname that does not refer to an existing file is
removed from the list. If the -a flag is specified filelist
itself is added to the list (subject to -a and -r special case).
If the resulting list is empty and the -r flag is specified,
filelist is unlinked. Otherwise the list is sorted and written out to
filelist.
fixflist was created to maintain file lists within the File System
Integrity System (see FSIC). One of the byproducts of that
package is a file list containing all the known temporary files (i.e.,
a.out, core, or any file beginning with a `,').
See also: fixflist(1) fixflist(-x) FSIC
flcomm
comm(1) like but columns put into files
flcomm is a comm(1) like program that allows columns to be diverted
to separate files and aborts in case of sequence errors or duplicated
lines. It was created to support the file mechanism used within the
Q-Tree directory file system integrity check (see FSIC) previously
called fl, hence the "fl" prefix.
flcomm is used in FSIC package qef script to compare file lists against
the known file lists and output the differences to specified files.
See also: flcomm(1) flcomm(-x) comm(1) FSIC fsic(x-qsg)
fnd
find a command
fnd searches the directories specified by $PATH for the argument
file. If it finds an executable file corresponding to the argument
file fnd writes the full path name to the standard output.
Flags allow the user to specify the inclusion or exclusion of
the current directory, or the reporting of all instances in the
path.
See also: fnd(1) fnd(-x) pathclash which(1) $PATH(x-qvrs)
fndstr
find a string in a file and output offset
fndstr searches the argument files -- defaults to the standard input
-- for the argument string, and outputs the offset of that string if
found.
fndstr was provided to facilitate setting the name of the database in
the sysnm binary. See sysnm(1) for a description of how fndstr
and setbytes are used to perform this.
See also: fndstr(-x) fndstr(1) setbytes sysnm
form
text formatter and macro processor
form is a general purpose macro processor that is intended to be
used as a front end for troff(1) and other text formatters. form is
generally used in conjunction with a macro package, the analog of
troff macro packages such as -ms or -man. form has several advantages
over straight troff: it has a more readable syntax, better macro
definition facilities, and it can be used to make documents portable
between different text formatters.
It should be noted that all the Q-Tree man pages are written in
form and that typset has a -f flag to invoke form on its
input.
See also: form(1) form(-x) fparens typset x-form (x-form)
x-eml (x-eml)
fparens
check bracket, brace and double quote balancing in form input
fparens processes its inputs as specified by arguments searching
for possible problems in form input with respect to:
* unbalanced `{'s, `[', `]', `}', and `"' characters;
* an `@' just before the end-of-file;
* a file that does not end with a newline;
* a nested unescaped special character;
* an unnested unescaped special character (suppressed if -n);
* an `@' immediately followed a character other than one of the
special characters.
Any detected anomalies are reported as rpl format lines (i.e.,
(i.e., filename, colon, line number, colon, comment). For example:
cmd1/man/envset.1:000207: `{' at position 2 unclosed
See also: fparens(1) fparens(-x) form x-form
ftest
test argument file attributes
ftest tests the argument file for the attributes specified via the
flags, outputting the appropriate diagnostic and/or taking some other
action.
ftest was created to eliminate the complicated and cumbersome testing
that is sometimes required in shell or make scripts to test whether or
not a file can be changed or exists.
See also: ftest(1) ftest(-x) test(1) cancreat
g
process go files
g is used to view and optionally remove the diagnostic output files
of go and josh, referred to as the go-files.
Within the qef gui, go is used to detach builds creating the files
displayed by the build monitor. g can be used to view those files.
Note: The -d flags to go and josh cause the output files to be
created in the user's
/.qtree/goes/<host> directory. The
-d flag to g causes it to look in the appropriate directory.
See also: g(1) g(-x) go josh goes gomonitor $GODIR
go
detach a command
go executes its argument command in background, usually redirecting
the standard input and outputs, possibly sending a message when the
argument command has completed. go is used to detach builds within
the qef gui, redirecting the outputs to diagnostic files that can be
viewed using the build monitor.
go appends messages to
/.qtree/goes/<host>/gomsgs when a command is
executed and when it terminates. goes can be used to remove
lines for completed jobs from the
/.qtree/goes/<host>/gomsgs files.
See also: go(1) go(-x) g goes
/.qtree/goes/<host>
$GODIR(x-qvrs) $GOFILE(x-qvrs)
goes
view or remove jobs from go message files
go, josh, and jog append messages to
/.qtree/goes/<host>/gomsgs
whenever a job is dispatched and when it ends. The following are
examples of such records:
pid command
host - directory yyyy/mm/dd hh:mm:ss
pid:status command
host - directory yyyy/mm/dd hh:mm:ss
pid! command
host - directory yyyy/mm/dd hh:mm:ss
pid:status! command
host - directory yyyy/mm/dd hh:mm:ss
The `:status' fields indicate that the job has completed, the `!'
that the job has been canceled. For completed jobs, the command
and directory fields may be truncated so that the entire line
fits into 80 characters.
goes can be used to:
+ view job records for current, specified, or all hosts;
+ cancel job records (i.e., insert a `!' after the pid:status field)
for completed jobs or jobs over a day old [*];
+ remove job records for completed or day old jobs [*].
[*] Can be applied to the current host's (default), a specified host's,
or all hosts' gomsgs files.
Note: jog might not be available.
See also: goes(1) goes(-x) go josh gomonitor jog(1)
/.qtree/goes/<host>/gomsgs
gomonitor
display josh halt files as updated and other files
gomonitor monitors the
/.qtree/goes/<host>/gomsgs files, displaying
job records that are appended to those files by go and josh.
Lines for completed lines are displayed in reverse video.
gomonitor also outputs the date and time (updated every five seconds),
the number of messages in your mailbox, the contents of
/.qtree/goshow
(if non-empty) or the contents of
/.qtree/td (see td(1)) and the
diary entries for the next week (see diary(1)).
gomonitor is designed to be run continuously in an xterm window,
refreshing the date and time every five seconds and the other
contents when they are changed. The command:
goes -c -h
may be used to cancel completed commands, for all hosts, which will
suppress their display by gomonitor.
An alternative to gomonitor is provided by the Build-Monitor window
of the qefgui. It provides facilities for viewing the go files
as they are created, removing selected go-files, halting or rerunning
jobs, and many more facilities.
Note: td(1) and diary(1) may not be part of your system.
See also: gomonitor(1) gomonitor(-x) josh g goes Build-Monitor(x-qefgui)
gotstr
output names of files that contain argument string
gotstr outputs the list of files named in filelist arguments (defaults
to the standard input) that contain the argument string, and it does so
very quickly by using a Boyer/Moore algorithm and reading 32K at a time.
Frequently gotstr is used to prepare an argument list for grep(1) as in:
grep pattern `gotstr string filelist`
or better:
gotstr string filelist | qrep -F pattern
See also: gotstr(1) gotstr(-x) qrep bm(1)
grpsort
sort groups of lines specified by ranges
grpsort reads its input files, searching for lines that match the
specified argument regular expression. The matched line and the lines
that follow up to (but not including) the next matched line constitute
a group. All lines are copied to a temporary file and the matched
string and the offset to its group are saved. Once all the input has
been read, the matched strings are sorted. Then the groups are read
from the saved input in the sorted order and output.
Note: If the pattern contains a sub-pattern -- specified by `\(...\)'
the string matched by the sub-pattern is used as the sort key.
As an example of its uses, grpsort is used to sort x_db entries, each
of which begins with `%{' optionally followed by a `-' and white
space. Thus to sort the entries of an x_db database by the first
key of a line one uses:
grpsort '^%{<-|>[ ]*\(.*\)'
See also: grpsort(1) grpsort(-x)
hhmmss
output a banner of the time
hhmmss clears the screen and outputs a banner of the time as in:
# ####### # # ####### # ### #####
## # # ### # # # ### # # # #
# # # # # # # # # # # #
# # # # ###### # # ######
# # # ####### # # # # #
# # ### # # # ### # # # #
##### # # # ##### # ### #####
Note that this representation of the time is legible when using the
``tiny'' or ``unreadable'' xterm fonts.
An alternative representation is provided that uses highlighting
which is somewhat more attractive.
By default, the display is refreshed every ten seconds on the ten
second time. An interrupt (usually Ctrl-C) will cause the time to
be refreshed every second and a subsequent interrupt will revert to
refreshing on the ten second mark.
To terminate the clock use two interrupts within a second.
An option (-S) is provided which shows a count down or elapsed
time, which when combined with the highlighting representation
is very useful for showing students the time left for an exam.
See also: hhmmss(1) hhmmss(-x) xclock(1)
hoff
hell of a lot faster than nroff
hoff is a much cut down (might I say absurdly cut down) version of
nroff(1) to be used to format simple documents or quickly left
justify and fill lines.
For example, hoff was used to justify and fill these lines
just by piping them through hoff within the editor (qed)
using:
?much cut?,. | hoff
A list of the supported commands can be found in hoff(-x).
See also: hoff(1) hoff(-x)
howto
output selected howto information
When howto is invoked with an argument X, it searches for a file called
Howto.dir/X in the directories named by $PATH. If such a file is found
and it begins with the sequence `#HT' followed by a tab, the file
is copied to the standard output, after replacing certain `%'
sequences with run-time values (e.g., the date or user's name) or
interpretations.
howto is used to describe various procedures and/or standards.
If howto is invoked without arguments, it outputs a list of all the
howto files available.
howto is a link to bp.
There are a number of howto files provided by default:
dirsetup How to edit a dirsetup database
help How to help someone use a computer
howto How to create a new howto file
swhygiene Stenning's Project Hygiene Principles and Suggestions
The author finds it a convenient mechanism for storing and accessing
miscellaneous information.
See also: howto(1) howto(-x) bp
incls
dynamic dependency tracker
incls takes as input a list of files and outputs the implied
dependencies. Its primary purpose is to maintain the incls._
database and to produce the dependency list used within the qef
scripts.
incls uses finite state automatas stored in files produced by
mkdeps to the argument files.
The qvrs variable SrcProdMap[class] may be used to extend the
list of affixes and their dependencies as generated by the -M
and -m flags.
incls will consult and update a universal cache of dependencies
in a DBM database named by @InclsDbm. Using such a database
saves rescanning commonly used headers such as stdio.h.
See incls.dir and InclsDbm.
See also: incls(1) incls(-x) mkdeps incls._ dmpdeps depsmap
SrcProdMap incls.dir InclsDbm InclsDbmUpdate
instal
meticulously install a file and audit it
instal [sic] is used to install files in remote directories. instal
accepts flags from the qvrs variables @_F_instal and @_F_instal[root] as
well as on the command line. It maintains an audit trail in the path
named by qvrs variable @InstLog. instal works hard to check that
everything happened correctly.
Of particular importance is the -I flag which causes instal to not
fail if it cannot set the specified mode, owner and/or group. In such
an instance, instal outputs a noisy warning message and records the
failure in file named by appending `.fix' to @InstLog (after removing
`.log' if it exists). The failure is recorded in the format read by
tchown which can be used by a privileged user at the end of the
build. This feature means that one does not need to be the root user
to build installations!!
So why's instal misspelt? See faq8.
See also: instal(1) instal(-x) _F_instal(x-qvrs) InstLog(x-qvrs) tchown
instdir
install a directory
instdir is a link to instal that creates directories.
See also: instdir(1) instdir(-x) instal instdir(x-qsg)
instfls
install files, but only if necessary, according to script
instfls reads its input script which contains a number of
source/destination path name pairs. It installs the source files into
the destination files, but only after checking to ensure that the
installation will result in a significant change. A history file is
maintained to suppress file comparisons if the files have not changed
since the last time instfls was run.
instfls can also take a list of files and the names of the source and
destination directories.
See also: instfls(1) instfls(-x) instfls(x-qsg) instal
if_install._ih if_install._il
jlines
join up selected lines
jlines copies the named file(s) (defaults to the standard input) to
the standard output, replacing selected newlines (i.e., joining some
lines) by specified string.
Normally, newlines escaped by a concatenation character (default `\')
are removed (together with the escape concatenation character). By
default, the concatenation character is assumed to precede the newline
but one can choose to have the escape character appear after the
newline to be removed (i.e., at the beginning of the next line).
See also: jlines(1) jlines(-x)
josh
a job shell
josh is a command interpreter that manages jobs selected by name
from the specified josh file -- defaults to
/.qtree/josh.
A josh file consists of lines of the following form:
# comments say no more
X=value assign a value to variable X
group
pats ... specifies that `group' implies jobs
matched by specified patterns.
labels...: commands the jobs to be done; commands may
be continued over multiple lines
and incorporate variable values
and command line arguments.
josh selects jobs to be done by those labels or groups matched by
command line specified patterns. The associated commands are then
interpreted using the shell. Flags are provided to detach the job
redirecting the output as is done by go, in which case josh
maintains a josh halt file that records progress and can be used
to halt a josh job.
An extremely important task performed by josh is to facilitate remote
executions of qef jobs as described in Remote-Qefs.
See also: josh(1) josh(-x) gomonitor go g Remote-Qefs
$GODIR(x-qvrs) $GOFILE(x-qvrs)
kdbm
extract from or add to DBM database
kdbm is a tool used to create, update and query a DBM database.
Basically a kdbm database uses ASCII keys with single or multiple
text line data elements.
See also: kdbm(1) kdbm(-x) ldbm sdba
l
list files in columns
l is yet another ls(1) type program that lists entries in the
specified directories. It is provided as part of the Q-Tree
to ensure a consistent interface and provide additional
capabilities not normally available using ls.
lc is a link to l that implies the -a and -l flags -- list all files
(-a) by file-type (-l).
Note: Some man(1) commands cannot retrieve l(1) due to their
interpretation of `l' as being a section number. In
such a case see lc(1).
See also: l(1) l(-x) lc lc(1)
lash
long argument list shell interface
lash runs its argument command repetitively for the specified
arguments -- possibly read from the standard input. The command
should contain % character sequences to specify the positions and
forms of the arguments. Supported forms include selecting the
argument's directory, basename, root, etc.
A command may also use multiple arguments.
lash is similar to the BSD tool apply.
See also: lash(1) lash(-x)
lc
list files by type in columns
lc is a link to l that lists the files in the argument directory
by type (e.g., directories, devices, etc). It also lists all
files whereas l suppresses files whose names begin with a `.'.
See also: lc(1) lc(-x) l
lcmp
compare two files
lcmp compares the two argument files byte by byte and reports any
differences as the octal address (see -d flag) of the difference and
the symbolic representation of the characters in each file separated
by tabs, as in:
000117 \t ` '
000120 007 x
000340 EOF \n
In most respects, lcmp is equivalent to cmp(1) with the -l flag.
The differences are the use of the symbolic representation of the
characters, use of octal addresses, and treatment of the EOF.
See also: lcmp(1) lcmp(-x) cmp(1) fcmp
ldbm
extract from or add to DBM line database
ldbm is used to create, update and query an ldbm database. which
is a DBM database (i.e., X.{dir,pag} pair) in which a key's data
item (as stored in the X.pag file) is a list of seek offsets into
third file X.data. The offsets point to newline terminated lines
of text for the key.
See also: ldbm(1) ldbm(-x) kdbm sdba
ledmp
display current lefile values
ledmp outputs the tables size, termcap strings and key mappings
contained in the argument leditor control file (default $LEFILE,
$LEDIR/${TERM} or <qtree-root>/lib/ledir/${TERM}). Flags may
be used to select one or more of the output tables.
See keys(x-lledit) for a list of the leditor keys.
See also: ledmp(1) ledmp(-x) leset (x-lledit) leditor $LEFILE
leset
set up line editing keyfile
leset creates and writes to object (defaults to the standard
output) the setup file needed for the leditor control file used in
qed and other tools. Normally this file is stored as
<qtree-root>/lib/ledir/${TERM}. However, the user may specify an
explicit lefile by setting the $LEFILE shell environment variable or
may specify a directory to be searched before looking in the standard
position by setting $LEDIR.
The input file syntax is described briefly in leset(-x) and fully
in leset(1).
The special keys symbols and their semantics are listed by the -k flag.
See also: leset(1) leset(-x) leditor ledmp
liborder
process nm of a library to produce dependency graph
liborder reads a snm output for a library and produces a dependency
graph of the library's modules. This output is usually input to
topolsrt (or tsort(1)) to produce a topologically sorted list of
the library's modules.
liborder used to be required on some old platforms to create the
ordered list of modules, however, this has been rendered unnecessary
by ranlib(1) or ar(1) features.
See also: liborder(1) liborder(-x) snm topolsrt
libs
output information on libraries used by the named files
libs processes a list of symbolic library names given via arguments,
or the libraries specified for an argument file via the LIBS[]
variable or as embedded in the files themselves as in:
/* LIBS: -ldtree
By default, libs outputs the library names or symbols that will be
used when linking the named file or library. Flags may be specified
to show the raw library list (-r), the list after LibMap expansion
is done (-m), the expanded list after the library search is done (-e)
the list of symbols to be used when linking (-c), and list all
libraries that match a specified symbol (-A).
Try:
libs -aA -lc
Note: If a libs argument begins with [name], as in:
libs [alternative]/.../realfilename.c
then alternative is used to match LibStatic[] patterns, instead
of realfilename.
Note: The qvrs -l flag outputs a list of all the variables used
in library searches and their current settings.
See also: libs(1) libs(-x) *lib-macros(x-qefpp) *lib-vars(x-qvrs)
Apropos: ? -Q <Lib|archive|libs>
lines
print first N and last M lines
lines prints the first head (default 5) and the last tail
(default 0) lines of each argument file (defaults to the standard
input) or the files named by the files or the standard input if the
-f flag is specified. lines also supports a -r flag which
causes lines to output lines in the rpl format, for example:
file:000123:contents of line # 123 in file
See also: lines(1) lines(-x) rpl
linked
list files with multiple links
linked checks the argument files (defaults to files named in the
standard input) or the files named by the argument files (if -f)
for files that exist and have multiple links. If there are 1 or less
links nothing is output, otherwise the name of the file is output.
A flag (-s) is provided that output those files that are symbolic
links.
See also: linked(1) linked(-x)
lls
ls for input files with selected fields output
lls is yet another variant of ls(1), with the difference that
the files to be listed may be named by the standard input or the
argument files and the file attribute fields displayed are
selectable by a command line option (see -o).
The list of selectable fields is output by lls(-x) and given in lls(1).
See also: lls(1) lls(-x) rls
lninsert
replace characters in master by lines from source
lninsert reads the master file and searches it for the replacement
character (defaults to '%'). Each replacement character is replaced,
in the output stream, by characters from the source file, up to the
next newline not preceded by a backslash. The newline is included in
the output unless the -n option is specified. The resulting merged
stream is written to the standard output. Either one of the master or
source files may be assigned to the standard input by using a `-'
instead of a file name.
lninsert is yet another useful tool for merging lists of fields into
a master form, possibly repeating the master, to create form letters
or database entries.
F.Y.I.: lninsert is ancient, dating back to fourth edition UNIX.
See also: lninsert(1) lninsert(-x)
lntree
create tree of symbolic links to input file list
lntree reads a list of pathnames from the argument file (defaults to
the standard input) and creates a ``shadow'' tree in the current
directory that consists of symbolic links to the input pathnames
relative to the argument fromroot. Hard links are used if symbolic
links are not supported by the host system. Directories are created
as required.
Pathnames in the argument files or the standard input are separated by
white-space or newlines. Strings following a `#' at the beginning of
a line or after a space or tab are ignored.
If the n flag is specified, lntree does nothing other than to report
what it would do.
See also: lntree(1) lntree(-x) ln(1) link(2) symlink(2)
man3db
apply trg script to selected items from man3 TIPs database
man3db is a special purpose TIPs trg program that will apply the
built-in trg program format or the trg source file trg as specified by
the -b or -t arguments to the items in the specified files or the
``*.d'' files in the argument dir (default ``*.d''). If a -q flag is
given, only those items that match the argument Tips query are
processed.
man3db is used to produce the x_db libraries such as x-ldtree.
man3db entries describing the routines of the library are embedded
in the actual source. man3db extracts these entries and processes
them with a built in man3db format that produces x_db formatted
information (possible being processed through form and grpsort).
See also: man3db(1) man3db(-x)<