Sponsored Content
Full Discussion: tar archive: time, date?
Top Forums UNIX for Dummies Questions & Answers tar archive: time, date? Post 50134 by jim mcnamara on Friday 16th of April 2004 02:32:24 PM
Old 04-16-2004
The mtime member of the following tar header struct tells you when the archive for that particular file was written.
Code:
@example
/*
 * Standard Archive Format - Standard TAR - USTAR
 */
#define  RECORDSIZE  512
#define  NAMSIZ      100
#define  TUNMLEN      32
#define  TGNMLEN      32

union record @{
    char        charptr[RECORDSIZE];
    struct header @{
        char    name[NAMSIZ];
        char    mode[8];
        char    uid[8];
        char    gid[8];
        char    size[12];
        char    mtime[12];
        char    chksum[8];
        char    linkflag;
        char    linkname[NAMSIZ];
        char    magic[8];
        char    uname[TUNMLEN];
        char    gname[TGNMLEN];
        char    devmajor[8];
        char    devminor[8];
    @} header;
@};

/* The checksum field is filled with this while the checksum is computed. */
#define    CHKBLANKS    "        "        /* 8 blanks, no null */

/* The magic field is filled with this if uname and gname are valid. */
#define    TMAGIC    "ustar  "        /* 7 chars and a null */

/* The magic field is filled with this if this is a GNU format dump entry */
#define    GNUMAGIC  "GNUtar "        /* 7 chars and a null */

/* The linkflag defines the type of file */
#define  LF_OLDNORMAL '\0'       /* Normal disk file, Unix compatible */
#define  LF_NORMAL    '0'        /* Normal disk file */
#define  LF_LINK      '1'        /* Link to previously dumped file */
#define  LF_SYMLINK   '2'        /* Symbolic link */
#define  LF_CHR       '3'        /* Character special file */
#define  LF_BLK       '4'        /* Block special file */
#define  LF_DIR       '5'        /* Directory */
#define  LF_FIFO      '6'        /* FIFO special file */
#define  LF_CONTIG    '7'        /* Contiguous file */

/* Further link types may be defined later. */

/* Bits used in the mode field - values in octal */
#define  TSUID    04000        /* Set UID on execution */
#define  TSGID    02000        /* Set GID on execution */
#define  TSVTX    01000        /* Save text (sticky bit) */

/* File permissions */
#define  TUREAD   00400        /* read by owner */
#define  TUWRITE  00200        /* write by owner */
#define  TUEXEC   00100        /* execute/search by owner */
#define  TGREAD   00040        /* read by group */
#define  TGWRITE  00020        /* write by group */
#define  TGEXEC   00010        /* execute/search by group */
#define  TOREAD   00004        /* read by other */
#define  TOWRITE  00002        /* write by other */
#define  TOEXEC   00001        /* execute/search by other */
@end example

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

tar archive with .Z files

Hello, I have a tar archive full of compressed .Z (compressed with the compress command) files. I have restored the tar to a disk but am looking for a way to uncompress every file in every sub-directory. Under normal circumstances, I would just change directories and "uncompress *" but with 1600... (3 Replies)
Discussion started by: Kun2112
3 Replies

2. UNIX for Dummies Questions & Answers

Archive (tar)

Hi, I want to archive below directories ex: /home/oracle/ddd0 /home/oracle/ddd1 /home/oracle/ddd2 I want a command(tar) which will let me archive the above directories excluding *.dmp(dump files), *.log(log files) in those directories. So the archived file doesn't have... (4 Replies)
Discussion started by: dreams5617
4 Replies

3. UNIX for Dummies Questions & Answers

Q: tar archive help

hey how do you create a archive and add file to an existing archive. i keep getting an error: dir/#: No such file or directory currently using tar -cvfu name.tar files files searching from a word document each line having different file extention. Thanks in advance (1 Reply)
Discussion started by: nookie
1 Replies

4. Shell Programming and Scripting

Tar archive issue

Hi, I make a tar archive: tar -czvf /path_to/cucu.tar.gz /path/dir_to_archive/ In the archive the /path/dir_to_archive/ is maintained for every file. I need that the archive to be made without the /path/dir_to_archive/ to contain only the files in /path/dir_to_archive/. Thanks,... (4 Replies)
Discussion started by: potro
4 Replies

5. Programming

read file from tar.gz archive

I want to write a c-program which reads a textfile from a tar.gz archive. How can I do it? (9 Replies)
Discussion started by: krylin
9 Replies

6. Shell Programming and Scripting

tar: unable to specify archive name with -p option

Hi, When I use -p option(preserve permissions) while creating tar archives, it throws error and creates archive in the name of 'p'. But without -p option I am able to create archive name as I mentioned. how do I work it out with --preserve-permissions? Any help is much appreciated. ... (3 Replies)
Discussion started by: learn more
3 Replies

7. Shell Programming and Scripting

Archive::Tar problem

Hello, I have a problem using Archive::Tar. it seem very trivial but i cannot get it work. First I have a list of files I grab from a directory. Then I create a tar archive and write the files into the archive. everything works great, except that I cannot properly extract the files. What... (0 Replies)
Discussion started by: amcrisan
0 Replies

8. Linux

tar archive

I have made tar archive of my system.. How can I make that tar archive to be bootable.. simply to install new linux from the archived tar file.. thanks in advance (8 Replies)
Discussion started by: Vit0_Corleone
8 Replies

9. Solaris

USTAR tar archive

Hello Admins, I am facing an issue with ustar tar archive on solaris 10. By mistake I have created ustar tar archive of /var/adm/messages file on solaris10. I am trying to untar the /var/adm/messages file . but I am not getting the original text messages file. I user tar -xvf ... (4 Replies)
Discussion started by: snchaudhari2
4 Replies

10. Shell Programming and Scripting

[Solved] How to tar data along with current system date and time.?

Hi all, Following is my small script:- #!/bin/ksh for i in `cat /users/jack/mainfile-dr.txt` do sudo cp -r $i /users/jack/DR01/. done cd /users/jack/DR01/ sudo tar cvf system1-DR.tar * scp system1-DR.tar backupserver:/DRFiles/system1 sudo rm -rf system1-DR.tar In this script I... (10 Replies)
Discussion started by: manalisharmabe
10 Replies
TAR(1)							      General Commands Manual							    TAR(1)

NAME
tar - tape archiver SYNOPSIS
tar [ key ] [ name ... ] DESCRIPTION
Tar saves and restores files on magtape. Its actions are controlled by the key argument. The key is a string of characters containing at most one function letter and possibly one or more function modifiers. Other arguments to the command are file or directory names specify- ing which files are to be dumped or restored. In all cases, appearance of a directory name refers to the files and (recursively) subdirec- tories of that directory. The function portion of the key is specified by one of the following letters: r The named files are written on the end of the tape. The c function implies this. x The named files are extracted from the tape. If the named file matches a directory whose contents had been written onto the tape, this directory is (recursively) extracted. The owner, modification time, and mode are restored (if possible). If no file argument is given, the entire content of the tape is extracted. Note that if multiple entries specifying the same file are on the tape, the last one overwrites all earlier. t The names of the specified files are listed each time they occur on the tape. If no file argument is given, all of the names on the tape are listed. u The named files are added to the tape if either they are not already there or have been modified since last put on the tape. c Create a new tape; writing begins on the beginning of the tape instead of after the last file. This command implies r. The following characters may be used in addition to the letter which selects the function desired. 0,...,7 This modifier selects the drive on which the tape is mounted. The default is 1. v Normally tar does its work silently. The v (verbose) option causes it to type the name of each file it treats preceded by the function letter. With the t function, v gives more information about the tape entries than just the name. w causes tar to print the action to be taken followed by file name, then wait for user confirmation. If a word beginning with `y' is given, the action is performed. Any other input means don't do it. f causes tar to use the next argument as the name of the archive instead of /dev/mt?. If the name of the file is `-', tar writes to standard output or reads from standard input, whichever is appropriate. Thus, tar can be used as the head or tail of a filter chain Tar can also be used to move hierarchies with the command cd fromdir; tar cf - . | (cd todir; tar xf -) b causes tar to use the next argument as the blocking factor for tape records. The default is 1, the maximum is 20. This option should only be used with raw magnetic tape archives (See f above). The block size is determined automatically when reading tapes (key letters `x' and `t'). l tells tar to complain if it cannot resolve all of the links to the files dumped. If this is not specified, no error messages are printed. m tells tar to not restore the modification times. The mod time will be the time of extraction. FILES
/dev/mt? /tmp/tar* DIAGNOSTICS
Complaints about bad key characters and tape read/write errors. Complaints if enough memory is not available to hold the link tables. BUGS
There is no way to ask for the n-th occurrence of a file. Tape errors are handled ungracefully. The u option can be slow. The b option should not be used with archives that are going to be updated. The current magtape driver cannot backspace raw magtape. If the archive is on a disk file the b option should not be used at all, as updating an archive stored in this manner can destroy it. The current limit on file name length is 100 characters. TAR(1)
All times are GMT -4. The time now is 11:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy