Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
AR(1)			    General Commands Manual			 AR(1)

NAME
       ar - create and maintain	library	archives

SYNOPSIS
       ar -d [-Tv] archive file	...
       ar -m [-Tv] archive file	...
       ar -m [-abiTv] position archive file ...
       ar -p [-Tv] archive [file ...]
       ar -q [-cTv] archive file ...
       ar -r [-cuTv] archive file ...
       ar -r [-abciuTv]	position archive file ...
       ar -t [-Tv] archive [file ...]
       ar -x [-ouTv] archive [file ...]

DESCRIPTION
       The  ar	utility	creates	and maintains groups of	files combined into an
       archive.	 Once an archive has been created, new files can be added  and
       existing	files can be extracted,	deleted, or replaced.

       Files  are  named in the	archive	by a single component, i.e., if	a file
       referenced by a path containing a slash (``/'') is archived it will  be
       named  by  the last component of	that path.  When matching paths	listed
       on the command line against file	names stored in	the archive, only  the
       last component of the path will be compared.

       All informational and error messages use	the path listed	on the command
       line, if	any was	specified, otherwise the name in the archive is	 used.
       If  multiple  files  in	the  archive have the same name, and paths are
       listed on the command line to ``select''	archive	files  for  an	opera-
       tion, only the first file with a	matching name will be selected.

       The  normal  use	of ar is for the creation and maintenance of libraries
       suitable	for use	with the loader	(see ld(1)) although  it  is  not  re-
       stricted	to this	purpose.  The options are as follows:

       -a     A	 positioning  modifier	used  with the options -r and -m.  The
	      files are	entered	or moved after the  archive  member  position,
	      which must be specified.

       -b     A	 positioning  modifier	used  with the options -r and -m.  The
	      files are	entered	or moved before	the archive  member  position,
	      which must be specified.

       -c     Whenever an archive is created, an informational message to that
	      effect is	written	to standard error.  If the -c option is	speci-
	      fied, ar creates the archive silently.

       -d     Delete the specified archive files.

       -i     Identical	to the -b option.

       -m     Move  the	specified archive files	within the archive.  If	one of
	      the options -a, -b or -i are specified, the files	are moved  be-
	      fore  or	after  the  position  file in the archive.  If none of
	      those options are	specified, the files are moved to the  end  of
	      the archive.

       -o     Set  the access and modification times of	extracted files	to the
	      modification time	of the file when it was	entered	into  the  ar-
	      chive.   This  will fail if the user is not the owner of the ex-
	      tracted file or the super-user.

       -p     Write the	contents of the	specified archive files	to  the	 stan-
	      dard output.  If no files	are specified, the contents of all the
	      files in the archive are written in the order they appear	in the
	      archive.

       -q     (Quickly)	append the specified files to the archive.  If the ar-
	      chive does not exist a new archive file is created.  Much	faster
	      than  the	 -r  option,  when  creating a large archive piece-by-
	      piece, as	no checking is done to see if the files	already	 exist
	      in the archive.

       -r     Replace  or  add the specified files to the archive.  If the ar-
	      chive does not exist a new archive file is created.  Files  that
	      replace  existing	 files	do  not	 change	the order of the files
	      within the archive.  New files are appended to the  archive  un-
	      less one of the options -a, -b or	-i is specified.

       -T     Select  and/or name archive members using	only the first fifteen
	      characters of the	archive	member or command line file name.  The
	      historic archive format had sixteen bytes	for the	name, but some
	      historic archiver	and loader implementations were	unable to han-
	      dle  names  that	used  the  entire space.  This means that file
	      names that are not unique	in their first fifteen characters  can
	      subsequently  be	confused.  A warning message is	printed	to the
	      standard error output if any file	 names	are  truncated.	  (See
	      ar(5) for	more information.)

       -t     List  the	 specified  files in the order in which	they appear in
	      the archive, each	on a separate line.  If	no  files  are	speci-
	      fied, all	files in the archive are listed.

       -u     Update  files.   When  used with the -r option, files in the ar-
	      chive will be replaced only if the disk file has a newer modifi-
	      cation time than the file	in the archive.	 When used with	the -x
	      option, files in the archive will	be extracted only if  the  ar-
	      chive file has a newer modification time than the	file on	disk.

       -v     Provide verbose output.  When used with the -d, -m, -q or	-x op-
	      tions, ar	gives a	file-by-file description of the	archive	 modi-
	      fication.	 This description consists of three, white-space sepa-
	      rated fields: the	option letter, a dash  (``-'')	and  the  file
	      name.  When used with the	-r option, ar displays the description
	      as above,	but the	initial	letter is an  ``a''  if	 the  file  is
	      added  to	 the  archive and an ``r'' if the file replaces	a file
	      already in the archive.

	      When used	with the -p option, the	name of	each printed  file  is
	      written  to the standard output before the contents of the file,
	      preceded by a single newline character, and followed by two new-
	      line  characters,	enclosed in less-than (``<'') and greater-than
	      (``>'') characters.

	      When used	with the -t option, ar displays	 an  ``ls  -l''	 style
	      listing  of  information about the members of the	archive.  This
	      listing consists of eight,  white-space  separated  fields:  the
	      file  permissions	 (see  strmode(3)), the	decimal	user and group
	      ID's, separated by a single slash	(``/''),  the  file  size  (in
	      bytes),  the  file modification time (in the date(1) format ``%b
	      %e %H:%M %Y''), and the name of the file.

       -x     Extract the specified archive members into the  files  named  by
	      the  command  line  arguments.  If no members are	specified, all
	      the members of the archive are extracted into the	current	direc-
	      tory.

	      If the file does not exist, it is	created; if it does exist, the
	      owner and	group will be unchanged.  The file access and  modifi-
	      cation  times are	the time of the	extraction (but	see the	-o op-
	      tion).  The file permissions will	be set to those	 of  the  file
	      when it was entered into the archive; this will fail if the user
	      is not the owner of the extracted	file or	the super-user.

       The ar utility exits 0 on success, and >0 if an error occurs.

ENVIRONMENT
       TMPDIR The pathname of the directory to	use  when  creating  temporary
	      files.

FILES
       /tmp	     default temporary file directory

       ar.XXXXXX     temporary file names

COMPATIBILITY
       By  default,  ar	writes archives	that may be incompatible with historic
       archives, as the	format used for	storing	 archive  members  with	 names
       longer  than fifteen characters has changed.  This implementation of ar
       is backward compatible with previous versions of	ar in that it can read
       and  write  (using  the -T option) historic archives.  The -T option is
       provided	for compatibility only,	and will be deleted in	a  future  re-
       lease.  See ar(5) for more information.

STANDARDS
       The  ar	utility	 is  expected  to offer	a superset of the POSIX	1003.2
       functionality.

SEE ALSO
       ld(1), ranlib(1), strmode(3), ar(5)

7th Edition			March 21, 1991				 AR(1)

NAME | SYNOPSIS | DESCRIPTION | ENVIRONMENT | FILES | COMPATIBILITY | STANDARDS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ar&sektion=1&manpath=4.3BSD+NET%2f2>

home | help