acctmerg(8)acctmerg(8)NAMEacctmerg - Merges total-accounting files into an intermediary file or a
daily accounting file
SYNOPSISacctmerg [-ahipv] [specification] [-tu] [file...]
Produces output as ASCII records. Lists column headings. This option
implies -a but is effective with the -p or -v options. Expects input
files to have ASCII records that are converted to binary output
records. Lists input but without processing. Produces a single record
that contains the totals of all input. Summarizes by user ID rather
than by user name. This is convenient when a single user ID is allo‐
cated to more than one user name. Produces output in ASCII, with more
precise notation for floating-point values.
The acctmerg command combines process, connect time, fee, disk usage,
and queuing (printer) total-accounting records in tacct binary or tacct
ASCII format (see the tacct structure in the acct.h file format for a
description of this total-accounting format). The acctmerg command
writes the results of record processing to standard output. The
accounting file produced by the acctmerg command may have entries for
as many as 18 columns. Column headings are printed only when you use
the -h option. The following table lists the column headings by number,
the column heading by label, and the purpose of the entry:
Column Label Purpose
1 UID User ID. This is the integer value of the
user ID from the /etc/passwd file.
2 LOGNAME User login name. This is the alpha user
login name from the /etc/passwd file.
3 PRI_CPU Prime-time CPU run time. This is the
total time in seconds that prime-time CPU
run time was charged to the user during
the active accounting period.
4 NPRI_CPU Nonprime-time CPU run time. This is the
total time in seconds that nonprime-time
CPU run time was charged to the named
5 NPRI_MEM Prime-time memory K-core. This is a mea‐
sure of memory usage during prime time.
This value expresses the amount of memory
used and the elapsed amount of prime time
during which it was used (K-core is the
product of total CPU time in minutes and
mean size of memory used).
6 NPRI_MEM Nonprime-time memory K-core. This is a
measure of memory usage during nonprime
7 PRI_RD/WR Prime-time read and write characters.
This is the total number of characters
transferred during prime-time operation.
8 NPRI_RD/WR Nonprime-time read and write characters.
This is the total number of characters
transferred during nonprime-time opera‐
9 PRI_BLKIO Prime-time number of I/O blocks. This is
the total number of I/O blocks trans‐
ferred during prime-time read and write
operations. The number of bytes in an
I/O block is implementation dependent.
10 NPRI_BLKIO Nonprime-time number of I/O blocks. This
is the total number of I/O blocks trans‐
ferred during nonprime-time read and
11 PRI_CONNECT Prime-time connect duration. This is the
total number of prime-time seconds during
which a connection existed
12 NPRI_CONNECT Nonprime-time connect duration. This is
the total number of nonprime-time seconds
during which a connection existed.
13 DSK_BLOCKS Disk blocks used. This is the total num‐
ber of disk blocks used.
14 PRINT Number of pages printed. This is the
total number of pages queued to any
printers in the system.
15 FEES Special fee charge units. This is the
number of integer units to charge for any
special fee. This value is the one sup‐
plied when the /usr/sbin/acct/chargefee
command is processed during the active
16 PROCESSES Number of processes. This is the total
number of processes spawned by the user
during the active accounting period
17 SESS Number of logins. This is the total num‐
ber of times the user logged in during
the active accounting period.
18 DSAMPS Number of disk-accounting samples. This
is the total number of times during the
active accounting period that the disk-
accounting command was used to get the
total number of disk blocks listed in the
DSK_BLOCKS column. When the value in the
DSK_BLOCKS column is divide by this num‐
ber, the average number of disk blocks
used during the accounting period is
Total accounting records are read from standard input and any addi‐
tional files (up to nine) you specify with the file operand. File
records are merged according to identical keys, usually the user ID and
user login name. To optimize processing performance, output is written
in binary, unless the -a or -v option is used.
Normally the acctmerg command is called from the runacct shell proce‐
dure, either to produce an intermediate file (/var/adm/acct/nite/day‐
tacct, for example) when one or more source accounting files is full,
or to merge intermediate files into a cumulative total
(/var/adm/acct/sum/tacct, is another example). The cumulative total
daily files are the source from which the monacct command produces an
ASCII monthly summary file, which is written to the /var/adm/acct/fis‐
The optional specification operand allows you to select input or output
column entries, as illustrated in Example 1. Field specifications are
a comma-separated string of field numbers. Field numbers are referenced
in boldface type in the first column of the foregoing list together
with their respective column headings. When you specify field numbers
they should be listed in the order specified by the boldfaced heading
Inclusive field ranges may also be specified, with array sizes properly
taken into account except for the ta_name number of characters. For
example, -h2-3,11,15-13,2 displays the LOGNAME (2), PRI_CPU (3),
PRI_CONNECT time (11), FEES (15), PRINT (14), DISK_BLOCKS (13), and
again LOGNAME (2), in that order, with the described column headings
(-h). The default specification is to output all 18 columns (1-18 or
1-), which produces rather wide output records that contain all the
available accounting data.
Queuing system, disk usage, or fee data can be converted intotacct
records with the acctmerge command, using the -i option and the speci‐
To merge inclusive fields from an ASCII disk-accounting file called
dacct into an existing total-accounting file named tacct as binary
information, but with entries for fields 1, 2, 13, and 18 only, enter
the following line: acctmerg-i1,-2,13,18 <dacct | acctmerg tacct
The acctmerg command reads the columnar entries for UID (1),
LOGNAME (2), DSK_BLOCKS (13), and DSAMPS (18) from the dacct
file as input, merges this information as tacct binary records,
and writes the result to standard output as ASCII. To repair
file jan2.rpt in inclusive tacct columnar format, enter the fol‐
lowing initial command, edit the jan2.tmp file, and then enter
the last command: acctmerg-v <jan2.rpt >jan2.tmp
Edit jan2.tmp as desired.... acctmerg-i >jan2.tmp >jan2.rpt
The first command redirects the content of file jan2.rpt to file
jan2.tmp, with ASCII output and floating-point values. After you
edit file jan2.tmp, the last command redirects file jan2.tmp as
ASCII input to file jan2.rpt as output, with output records in
Specifies the command path. Accounting header files that define for‐
mats for writing accounting files. This is where prime time is set.
Intermediate daily total-accounting file. Cumulative total-accounting
Commands: acct(8), acctcms(8), acctcom(8), acctcon(8), acctdisk(8),
acctprc(8), fwtmp(8), runacct(8), wtmpconvert(8)