Sponsored Content
Top Forums Shell Programming and Scripting Loading a tar file into the shell script Post 302590992 by wini008 on Wednesday 18th of January 2012 07:25:13 AM
Old 01-18-2012
Loading a tar file into the shell script

Hi All,

I am trying to write a shell script in which the contents of a small tar file is loaded into a variable and the same variable contents is moved into another file and finally untaring of the newly created file is done.

The Shell Script is as follows:
Code:
#----Start Of The Script------
File_Load=`cat -v sample.tar.gz`

echo "$File_Load" > New_Sample.tar.gz
tar -xvf New_Sample.tar.gz
#----End Of The Script--------

When i execute the above scritpt, it creates New_Sample.tar.gz, but untaring is failing is with below error:
Code:
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Read 10063 bytes from Jai1
tar: Error exit delayed from previous errors

And also i observed that the files sample.tar.gz and New_Sample.tar.gz differ
Code:
#diff sample.tar.gz New_Sample.tar.gz
Binary files sample.tar.gz and New_Sample.tar.gz differ

What is the reason for getting this error? Why both files are different? What are the changes needed to fix this issue?
Please guide me.

Thanks & Regards,
Vinay

Moderator's Comments:
Mod Comment Please use next time code tags for your code and data

Last edited by vbe; 01-18-2012 at 10:18 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using tar inside a shell script

Hi, I am using tar cvf inside a shell script to archive files. Is there an option to surpress any prompts which come up if the desired archive name already exists ? Thanks in Advance. Kas. (2 Replies)
Discussion started by: kas7225
2 Replies

2. Shell Programming and Scripting

Shell Script for Data loading in Oracle

Hi All I am new to unix. I need a shell script to load a datafile in to oracle. I already have a control file, and data file. all I need is if i execute the shell it must load the data using the ctl file to table. Control file : PAY0001.ctl Datafile : mon_grs_det.dat log file :... (3 Replies)
Discussion started by: raghuraja_r
3 Replies

3. Shell Programming and Scripting

hi.. how to attach a tar file using shell script

Hi, How to attach a tar file using shell script or the command liine.. I following command just send the mail to the person with .txt file as body, I want to send it as attachment. /usr/sbin/sendmail -f "user1@daemon.com" user2@daemon.com <hi.txt The contents of the hi.txt will be... (1 Reply)
Discussion started by: madhumathikv
1 Replies

4. Shell Programming and Scripting

shell script to selectively tar directory based on date

hye everybody :) , i'm new to the scripting world.. hope you guys can help me out with this one.. i'm trying to identify any directory under /tmp/saya that is created more than one day from the current date.. e.g, today is March 14, so any directory that has time stamp March 13 backwards, i... (2 Replies)
Discussion started by: fara_aris
2 Replies

5. Shell Programming and Scripting

Function loading in a shell scripting like class loading in java

Like class loader in java, can we make a function loader in shell script, for this can someone throw some light on how internally bash runs a shell script , what happenes in runtime ... thanks in advance.. (1 Reply)
Discussion started by: mpsc_sela
1 Replies

6. Shell Programming and Scripting

unix script for loading a data from a file into database

Hi All, I am trying to load a data from a files in a particular directory to a database.. cd $SCC isql metdb >> ${LOGDATA}/LOAD.LOG < ! load from "${LDATA}/${FORM}.ld" insert into $LOADTABLE ! But it's showing the error "syntax error at line 46 : `<<' unmatched" Can u plz help me... (5 Replies)
Discussion started by: grajesh_955
5 Replies

7. UNIX for Dummies Questions & Answers

tar -cvf test.tar `find . -mtime -1 -type f` only tar 1 file

Hi all, 4 files are returned when i issue 'find . -mtime -1 -type f -ls'. ./ora_475244.aud ./ora_671958.aud ./ora_934052.aud ./ora_934050.aud However, when I issued the below command: tar -cvf test.tar `find . -mtime -1 -type f`, the tar file only contains the 1st file -... (2 Replies)
Discussion started by: ahSher
2 Replies

8. Shell Programming and Scripting

background image not loading in newly thrown html page by shell script

I m trying to throw back html page when a file is found.While throwing back html page, the background image is not coming. I am using Apache server.Please suggest how to resolve... #!/bin/ksh echo -e "Content-type: text/html\n\n" echo "<html><head></head><body background=\"/asc/ppp.jpg\">"... (10 Replies)
Discussion started by: ravi18s
10 Replies

9. UNIX for Dummies Questions & Answers

Executing a tar command with the --exclude option in a Debian shell script.

Hi All, I am trying to execute the following tar command with two --exclude options to suppress extract of the two directories specified. Do I need to single quote the directory paths ?? Many thanks for your help. The relevant code excerpt from the script is: cd /var/www/${SITE} ... (7 Replies)
Discussion started by: daveu7
7 Replies

10. Shell Programming and Scripting

How to make Shell script of using tar command?

Hi Guys, I have to make shell script means tar all files from path /home/admin and move to path /dis/wis/ Please help me. (5 Replies)
Discussion started by: aaditya321
5 Replies
LESSOPEN(1)						      General Commands Manual						       LESSOPEN(1)

NAME
lessfile, lesspipe - "input preprocessor" for less. SYNOPSIS
lessfile, lesspipe DESCRIPTION
This manual page documents briefly the lessfile, and lesspipe commands. This manual page was written for the Debian GNU/Linux distribution because the input preprocessor scripts are provided by Debian GNU/Linux and are not part of the original program. lessfile and lesspipe are programs that can be used to modify the way the contents of a file are displayed in less. What this means is that less can automatically open up tar files, uncompress gzipped files, and even display something reasonable for graphics files. lesspipe will toss the contents/info on STDOUT and less will read them as they come across. This means that you do not have to wait for the decoding to finish before less shows you the file. This also means that you will get a 'byte N' instead of an N% as your file posi- tion. You can seek to the end and back to get the N% but that means you have to wait for the pipe to finish. lessfile will toss the contents/info on a file which less will then read. After you are done, lessfile will then delete the file. This means that the process has to finish before you see it, but you get nice percentages (N%) up front. USAGE
Just put one of the following two commands in your login script (e.g. ~/.bash_profile): eval "$(lessfile)" or eval "$(lesspipe)" FILE TYPE RECOGNITION
File types are recognized by their extensions. This is a list of currently supported extensions (grouped by the programs that handle them): *.a *.arj *.tar.bz2 *.bz *.bz2 *.deb, *.udeb, *.ddeb *.doc *.gif, *.jpeg, *.jpg, *.pcd, *.png, *.tga, *.tiff, *.tif *.iso, *.raw, *.bin *.lha, *.lzh *.tar.lz, *.tlz *.lz *.7z *.pdf *.rar, *.r[0-9][0-9] *.rpm *.tar.gz, *.tgz, *.tar.z, *.tar.dz *.gz, *.z, *.dz *.tar *.tar.xz, *.xz *.jar, *.war, *.xpi, *.zip *.zoo USER DEFINED FILTERS
It is possible to extend and overwrite the default lesspipe and lessfile input processor if you have specialized requirements. Create an executable program with the name .lessfilter and put it into your home directory. This can be a shell script or a binary program. It is important that this program returns the correct exit code: return 0 if your filter handles the input, return 1 if the standard lesspipe/lessfile filter should handle the input. Here is an example script: #!/bin/sh case "$1" in *.extension) extension-handler "$1" ;; *) # We don't handle this format. exit 1 esac # No further processing by lesspipe necessary exit 0 FILES
~/.lessfilter Executable file that can do user defined processing. See section USER DEFINED FILTERS for more information. BUGS
When trying to open compressed 0 byte files, less displays the actual binary file contents. This is not a bug. less is designed to do that (see manual page less(1), section INPUT PREPROCESSOR). This is the answer of Mark Nudelman <markn@greenwoodsoftware.com>: "I recognized when I designed it that a lesspipe filter cannot output an empty file and have less display nothing in that case; it's a side effect of using the "no output" case to mean "the filter has nothing to do". It could have been designed to have some other mechanism to indicate "nothing to do", but "no output" seemed the simplest and most intuitive for lesspipe writers." Sometimes, less does not display the contents file you want to view but output that is produced by your login scripts (~/.bashrc or ~/.bash_profile). This happens because less uses your current shell to run the lesspipe filter. Bash first looks for the variable $BASH_ENV in the environment expands its value and uses the expanded value as the name of a file to read and execute. If this file produces any out- put less will display this. A way to solve this problem is to put the following lines on the top of your login script that produces output: if [ -z "$PS1" ]; then exit fi This tests whether the prompt variable $PS1 is set and if it isn't (which is the case for non-interactive shells) it will exit the script. SEE ALSO
less(1) AUTHOR
This manual page was written by Thomas Schoepf <schoepf@debian.org>, for the Debian GNU/Linux system (but may be used by others). Most of the text was copied from a description written by Darren Stalder <torin@daft.com>. LESSOPEN(1)
All times are GMT -4. The time now is 05:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy