ARJ(1)

NAME
arj - Archiver for .arj files

SYNOPSIS
arj command [-switch[-|+|option]] archive[.arj] [base directory] [!list name|path name|wildcard name]

COMMANDS

ac  Add Chapter to chapter archive.

cc  Convert archive to Chapter archive.

dc  Delete last Chapter from archive.

a   Add files to archive.

b   execute Batch or dos command.

c   Comment archive files.

d   Delete files from archive.

e   Extract files from archive.

f   Freshen files in archive.

g   Garble files in archive.

i   check Integrity of the arj program.

j   Join archives to archive

k   remove obsolete bacKup files.

l   List contents of archive.

m   Move files to archive.

n   reName files in archive.

o   Order files in archive.

p   Print files to standard output.

q   recover damaged arj file.

r   Remove paths from filenames.

s   Sample files to screen with pause.

t   Test integrity of archive.

u   Update files to archive.

v   Verbosely list contents of archive.

w   Where are text strings in archive.

x   eXtract files with full pathname.

y   copY archive with new options.

SWITCHES

c   skip time-stamp Check

e   Exclude paths from names

f   Freshen existing files

g   Garble with password

i   with no progress Indicator

m   with Method 0, 1, 2, 3, 4

n   only New files (not exist)

r   Recurse subdirectories

u   Update files (new and newer)

v   enable multiple Volumes

w   assign Work directory

x   eXclude selected files

y   assume Yes on all queries

hk  enable ARJ-PROTECT damage protection

DETAILED SWITCHES

-   Disables switch char

+   Inhibits ARJ_SW usage
    +var: set environment variable

@   Set 1 token per response file line

!   Set list char (!)

&   Set batch critical error handler

#   Select files by number

$   Add/extract volume label
    $A: add/extract label to drive A

a   Allow any file Attribute
    a1: any files, directories and UNIX special files

b   Backup changed files
    b1: Backup changed, reset archive bits
    b2: only reset archive bits
    b3: reset archive bit during restore
    b4: do not restore bits, reset arc
    b5: do not restore any file attributes

c   Skip time-stamp Check

d   Delete added files asks permission before deleting
    d1: Delete without permission (same as arj m)
    d2: Truncate instead of deleting

e   Exclude paths from names
    e1: Exclude base dir from names

f   Freshen existing files
    f1: Freshen with OLDER files
    f2: Freshen with DIFFERENT files
    f3: Freshen with CRC mismatched files

g   Garble with password
    gstew: garble with password stew
    g?: prompt for password

i   Show no progress Indicator
    i1: show bar graph Indicator
    i2: show percentage and bar graph
    i3: total progress percentage
    i4: total progress bar graph
    i5: total percentage and bar graph
    i6: total percentage and file graph

k   Keep a .bak of arj archive

l   Create List_name file
    lnames.list: create names.list

m   With Method 0, 1, 2, 3, 4
    m0: store (no compression)
    m1: good compression (default)
    m2: less memory and compression
    m3: FAST! less compression
    m4: FASTEST! least compression

n   Only New files (not exist)

o   On or after YYYYMMDDHHMMSS
    o:       on today
    o19901225: on/after 12/25/1990
    ob: Before YYYYMMDDHHMMSS
    ob:       before today
    ob19901225: before 12/25/1990
    od: no older than N Days
    od5: five or less days old
    oa: After YYYYMMDDHHMMSS (last access)
    oa:       on today
    oa19901225: after 12/25/1990
    oab: Before YYYYMMDDHHMMSS (last access)
    oab:      before today
    oab19901225: before 12/25/1990
    oc: After YYYYMMDDHHMMSS (created)
    oc:       on today
    oc19901225: after 12/25/1990
    ocb: Before YYYYMMDDHHMMSS
    ocb:      before today
    ocb19901225: before 12/25/1990

p   Match using full Pathnames
    p1: match Pathname with subdirs

q   Query on each file

r   Recurse subdirectories

s   Set archive time-Stamp to newest
    s1: save original time-Stamp
    s2: set archive time-Stamp
    s3: save both original time-Stamps

t   Set file Type (default 0)
    t0: set binary file type
    t1: set C text file type
    t1f: force C text file type
    t1g: set C text with graphics

u   Update files (new + newer)
    u1: Update files (new + OLDER)
    u2: Update files (new + different)
    u3: Update files (new + CRC mismatch)

v   Enable multiple Volumes
    v360: build 362000 byte volumes
    v50K: build 50000 byte volumes
    va: auto-detect space available
    vd/tmp/*: delete /tmp/*
    ve: use alternate volume naming
    vi: inhibit diskette change test
    vr50K: reserve 50000 bytes of space on first volume
    vs: provide command prompt
    vscmd: execute cmd before each vol
    vv: beep between volumes
    vw: keep Whole files in volumes
    vz: provide command with no echo
    v360,v720,v1200,v1440: abbrevs Volume options may be in any order
           except s and z which must be last

w   Assign Work directory
    w/tmp: use /tmp as work directory

x   eXclude selected files
    x*.sh: exclude *.sh files
    x!names: exclude files in names multiple exclusions are allowed

y   Assume Yes on all queries except diskette volume prompts
        Use this switch for batch mode

z   Supply archive comment file _ Convert filenames to lower case
    zarc.cmt: use arc.cmt for comments
    z/dev/null: use to strip comments

SHIFTED SWITCHES

h#  Append date string to name
    h#1: append time string to name
    h#2: append DHHMMSS to name (custom: h#{Y,M,D,N,h,m,s})
    h#YYYY-MMDD: append YYYY-MMDD

h$  Try to use longnames (Win2000)

h2  Obsolete synonym for -2 group of options

ha  Ignore readonly Attribute

hb  Select by file attribute/type
    a - archive bit set
    b - archive bit clear
    r - readonly
    s - system
    h - hidden
    d - directory
    n - normal file, not d,h,r,s,c,l
    c - chapter label
    l - volume label
    f - abbrev for n,d,r,s,h
    u - UNIX special files
    w - win95 long filenames
    hb: select all types
    hbsh: select hidden, system only
    hbd: select dirs only

hc  Execute Command at arj start
    hcclear: execute clear

he  Skip test of security Envelope
    he1: set error on security Envelope

hf  Set short filenames only
    hf1: set longnames in file comment or extract with w95lname.nnn
    hf2: use long filenames in DOS
    hf3: set longnames in file comment using shortname wildcards
    hf4: set all files archived in Windows as Windows long filenames

hg  Specify garble module filename
    hgarjcrypt.so: set arjcrypt.so as name of garble module
    hg!: specify use of 40 bit encryption

hi  Detailed display in Index files

hk  Build data protection record

hk  Default amount of recovery data
    hk1: more recovery data
    hk9: maximum amount of recovery data
         Disable ARJ-PROTECT when used with the "y" command

hl  Return error for Listfile error

hm  Increase file list capacity
    hm!: redirect -hm temp file
    hm! : move temp file to XMS mem
    hm!/tmp : move temp file to /tmp

hn  Specify non-existent filespec
    hn####: set #### as filespec

ho  Only extract files with matches
    ho1: Only extract files without matches

hq  Ignore open access error on adds
    hq1: ignore open not found error on adds
    hq2: ignore access and not found on adds

hr  Try to ignore archive errors

hs  Disable file Sharing

ht  Set Target directory
    ht/destdir

hu  Allow Update of volume archives

hv  Check for arj version

hw  Scroll save search filename display
    hw1: display only filenames with matches

hx  Set default archive extensions
    hx.arj.sdn

hy  set arj32 to use ANSI codepage set arj to extract ANSI codepage archive
    hy1: force arj32 to use OEM codepage
    hy2: force arj32 to use ANSI codepage

hz  Create an ARJ-SECURITY envelope

j#  Store only CRC and not the file
    j#1: store only date, size, attributes
    j#2: restore file attributes
    j#3: restore file dates
    j#4: restore file attributes and dates

j$  Do not process file DTA and DTC

ja  Set P command to display ANSI
    ja1: inhibit the display of comments

jb  Set chapter backup processing
    jb0: clear chapter archive status
    jb*: select all chapter backup files

jc  Exit after Count of files
    jc5: exit after 5 files
    jc nam1 nam2: exit after 2 files

jd  Ensure free Disk space
    e -jd50K: skip file if<50000 free
    l -jd1000: set error if<1000 free

je  Create self-extracting archive
    je1: create SFXJR archive

jf  Store/use Full specified path
    jf1: store/use path minus drive

jg  [OBSOLETE]
    jg1: [OBSOLETE]

jh  Set Huffman buffer size
    jh65535: set to 65535 bytes (max)
    jh2048: set to 2048 bytes (min)

ji  Create Index file
    jiindex.file: create index.file

jk  Keep temp archive on error

jl  Display only filespecs

jm  Set Maximum compression mode
    jm1: set faster Maximum compression

jn  Restart volumes at fileName
    jn/bin/test: restart at /bin/test
    jn: get restart information from previously written index file

jo  Query when updating archive file
    jo: extract to unique Output names
    jo1: extract to unique Output names keeping file extension

jp  Pause after each screenful
    jp50: pause, set page size to 50

jq  Set string parameter
    jqstring: set parameter to string

jr  Recover broken archive files
    jr1: Recover badly broken archive files

js  Store archives by suffix (default is arj, arc, lzh, pak, rar, zip, zoo, j, and uc2).
    js.zoo: store only .zoo files

jt  Test temporary archive by CRC
    jt1: Test CRC and file contents
    jt2: Test only added file contents
    jt3: Test only file date-time and size

ju  Translate UNIX style paths

jv  Set Verbose display
    jv1: set special verbose list mode

jw  Set extract output filename
    jwnew.file: output to new.file

jx  Start at eXtended position
    jx10000: start at position 10000

jy  Suppress queries assuming Yes
    a - skip append query
    c - skip create directory query
    d - skip delete files query
    k - skip disk space available query
    n - skip new filename prompt
    o - skip overwrite file query
    r - erase all type-ahead before query
    s - skip scanned enough text query
    v - skip proceed to next volume query
    y - accept single character Y/N/A/Q
    jycny: skip create, new name queries in single character
            input mode

jz  Supply file for file comment
    jzfile.cmt: use file.cmt for comments
    jz/dev/null: use to strip file comments

2a  Serialize names on extraction

2b  [UNIX] restrict to Block devices
    2b or 2b.: current device only
    2b-/usr: all except where /usr is located

2c  [OS/2, NT] handle Crit. EAs only

2d  arj/DOS compatibility mode
    2d1: (OBSOLETE) comment compatibility

2e  [OS/2, NT] filter Extended attrs
    2e.*: pack/unpack system EAs only
    2e.ICON?: pack/unpack icons only
    2e: disable EAs handling

2f  Disable comment serialization across multiple volumes

2h  [UNIX] Disable hardlink handling
    2h1: Extract hardlinks as symlinks

2k  Skip century display in dates
    2k1: use a non-ambiguous date display format

2l  [OS/2, NT] treat .LONGNAME EAs as filenames when possible

2o  [UNIX] store/restore file ownership
    2o1: Store numeric UID/GID values 2o2: Same as -2o but saves group as well

2p  Specify process Priority class
    OS/2, NT: 2p1...2p4
    Linux, FreeBSD: 2p1...2p41

2r  Revert directory Recursion order

2s  [UNIX] preserve Symlink properties

2x  [OS/2, NT]: eXclude extended attrs
    2x.ICON?: ignore icons

DEFAULTS
Save path information in archive
Save long filenames
Save/restore extended attributes
Save/restore file date-time created and accessed in Win95 and OS/2
Save timestamps in the UNIX format under UNIX-like operating systems
Don't save drive and root in path information
Display comment ANSI sequences with built-in display handler
Prompt before overwriting output files
Use method 1 compression
Use binary mode
Use ! as list file symbol
The "ac" command is an abbreviation for "u -u2 -jb"
The "cc" command is an abbreviation for "y -jb"
The "dc" command is an abbreviation for "d -jb"

Under Win32, arj uses OEM codepage by default. The "-hy" option sets arj to use the ANSI codepage which is the Windows graphical environment default. arj/Win32 self-extracting archives should be built using the "-hy" option.

To ensure compatibility with previous versions of arj, the "-2d" parameter has to be specified when archiving under UNIX.

USER PROMPT RESPONSES

Yes yes

No  no

Quit
    abort out of arj

Always
    always assume yes for current type of query

Skip
    always assume no for current type of query

Global
    always assume yes for all queries except diskette volume prompts

Command
    prompt for and execute one system command

ENVIRONMENT
ARJ_SW = -jyry -jv -i1
ARJ_SW = /etc/arj.cfg

EXIT STATUS

0   Success

1   Warning (specified file to add to archive not found, specified file to list, extract, etc., not found, or answering negatively to "OK to proceed to next volume..." prompt)

2   Fatal error

3   CRC error (header or file CRC error or bad password)

4   ARJ-SECURITY error or attempt to update an ARJ-SECURED archive

5   Disk full or write error

6   Cannot open archive or file

7   Simple user error (bad parameters)

8   Not enough memory

9   Not an arj archive

10  [DOS] XMS memory error (read or write)

11  User control break

12  Too many chapters (over 250)

EXAMPLES

Add files minus directory structure:
    arj a -e archive *

Add two files to archive:
    arj a archive name1 name2

Add files to archive with verification:
    arj a -jt archive *

Add files with maximum compression:
    arj a -jm archive *

Add several directories of files:
    arj a archive ... dir1 dir2 dir3

Add thousands of files to an archive:
    arj a -hm1 -r archive *

Add a chapter to an archive:
    arj ac archive /foo/dir/* -r

Comment archive header only:
    arj c archive -zcmt.fil

Convert standard archive to chapter:
    arj cc archive

Convert chapter archive to standard:
    arj y archive -jb0

Delete the last chapter from an archive:
    arj dc archive *

Strip archive comment only:
    arj c archive -z/dev/null

Extract files from archive:
    arj e archive

Extract maintaining directory structure:
    arj x archive

Extract new and newer files without query:
    arj e archive -u -y

Extract subdirectory from archive:
    arj e archive subdir/* -p1

Extract files to directory:
    arj x archive destdir/ *

Extract files to directory:
    arj x archive * -htdestdir

Extract files to directory with space:
    arj x archive "Some Dir/ "

Extract files to directory with space:
    arj x archive "-htSome Dir"

Extract a Win95 archive to plain DOS:
    arj x archive -hf2

List files in archive:
    arj l archive

Move files to archive:
    arj m archive *.tex

Move files from archive:
    arj e -d archive *.tex

Recover files from a damaged archive:
    arj x archive -jr

Test integrity of files in archive:
    arj t archive

Test multiple arj archives:
    arj t *.arj -hr

Add files to a multiple volume archive:
    arj a -va /floppy/archive *

Create up to 999 archive volumes:
    arj a -va /floppy/archive.001

Extract from a multiple volume archive:
    arj x -v /floppy/archive

Create a multiple volume self-extractor:
    arj a -va -je /floppy/archive *

Convert archive to self-extractor:
    arj y -je1 archive

Backup dir /foo to dir /floppy:
    arj a /floppy/backup /foo -a1 -b2 -r -vvas -w/foo -js -jt -hk

Restore backup on dir /floppy to dir /foo:
    arj x /floppy/backup /foo -vv -y

SELF-EXTRACTOR ARCHIVES
If the first two characters of an arj comment are "))" in a self-extractor, then the self-extractor will accept the appended line as its command line.

")) -o" will force the self-extractor to overwrite existing files.

SEE ALSO
rearj(1), unarj(1), arj-register(1).

AUTHOR
This manual page was written by Ola Lundqvist <opal@debian.org> in pod format, then converted by Guillem Jover <guillem@debian.org> to nroff format.