01-13-2011
#!/bin/bash
Quote:
shopt -s extglob
for dir in *
do
if [ -d $dir ]
then
echo "--- Entering directory $dir ---"
for file in "${dir}"/*.gz
do
fname=`basename "$file" .gz`
echo "Now processing $fname ..."
gunzip -cv "$fname.gz" > "$fname"
mv -iv "$fname" ~/data
done
fi
done
Assuming that I have understood this correctly, I think that the script contains fundamental design errors which makes it slow. Writing gigabytes using Shell redirect ">" is not a good idea.
It would be considerably faster to copy the zipped files directly to the target directory then unzip in the target directory using "gunzip" (not "gunzip -c") on the file copy. Maybe you had an issue copying the directory tree?
The original process describes copying the original tree, decompressing each file, then copying the decompressed files to the target tree. It is much easier to copy the whole tree of compressed files to the target directory using "find ." piped to "cpio -pdum /target_directory" then decompress in the target directory. This technique for copying files is described in the man pages for "find" and "cpio" - do read both manuals and try on a test system first. Not clear whether there is anything present in the target directories already.
My idea only makes sense if you are copying all files. If ".CP12" files are a selection then we need a different technique. It also matters if the various directories are on different filesystems (because "mv" becomes a copy rather than a rename if they are).
Last edited by methyl; 01-13-2011 at 09:09 AM..
Reason: typos
10 More Discussions You Might Find Interesting
1. HP-UX
Hello evrebody ,
I have HPUX-11, i try to install "Mozilla" and "unzip utillity"
I cannot decompress file (F.tar.gz) or file(F.gz) by commandes:
gunzip -dv F.tar.gz | tar -xvf
gunzip F.tar.gz
or
gzip -dv F.tar.gz |tar -xvf
gzip F.gz
maybe someone know What's the reason?
maybe i... (1 Reply)
Discussion started by: yanly64
1 Replies
2. UNIX for Dummies Questions & Answers
Hi to all, I'm new in this forum and I just need a quick answer from the experts out there, I have a 2761.sp file, in short a ".SP" file, it was given to me compressed, and I need to decompress it before Monday. I saw a software named Splint, but it shows an error, a DMI error message, so I dont... (3 Replies)
Discussion started by: jeco
3 Replies
3. Shell Programming and Scripting
In a bash script:
src=”cooltrack.wav”
dst=”cooltrack.mp3”
lame $src $dst
I would like to add some line that would delete the source wav file like:
rm $src
but I would like this only if the encoding was successful.
What should I include before deleting the original to check that the... (2 Replies)
Discussion started by: Aia
2 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I have a zipped Oralce software (linux.x64_11gR1_database.zip) and I need to unzip it. On the Linux server, I only see the gunzip utility listed:
$ ls -ltr *zip*
-rwxr-xr-x 3 root root 60320 Jan 15 2008 gzip
-rwxr-xr-x 3 root root 60320 Jan 15 2008 gunzip
Can I use the command... (1 Reply)
Discussion started by: syang68
1 Replies
5. Shell Programming and Scripting
i have 200000bytes size of a unix file i need to delete some text between two strings recursively using a loop with sed or awk . these two strings are : 1st string getting from a file :::2 nd string is fi...its constant . can anyone help me sed -n'/<1 st string >/,/fi/' <input_filename> is the... (2 Replies)
Discussion started by: santosh1234
2 Replies
6. UNIX for Advanced & Expert Users
Hi,
I want to delete all empty directories in a long directore tree structure. I want to use that from a script that will run on HP-UX 11. My definition of empty directory is that there is no regular file under it and directly beneath it. To elaborate, I have below directories.
/app/dev/java... (14 Replies)
Discussion started by: asutoshch
14 Replies
7. Shell Programming and Scripting
I am completely new to shell scripting but have been assigned the task of creating several batch files to manipulate data. My final task requires me to find lines that have duplicates present then delete not only the duplicate but the original as well. The script will be used in a windows... (9 Replies)
Discussion started by: chino_1
9 Replies
8. UNIX for Dummies Questions & Answers
I have a list of log files in a directory. Once i tar them I need to remove the original log files. How do i do it? (4 Replies)
Discussion started by: manutd
4 Replies
9. Shell Programming and Scripting
I have compressed files under directory '/root/data' and i need the uncompressed files in another directory
'/root/uncom'. I running a shell script below shell script from directory '/root/'
gunzip /root/data/*.gz -d /root/uncom
But this is failing with
gunzip: /root/uncom is a directory... (2 Replies)
Discussion started by: vel4ever
2 Replies
10. Shell Programming and Scripting
I have compressed files under directory '/root/data' and i need the uncompressed files in another directory
'/root/uncom'. I running a shell script below shell script from directory '/root/'
gunzip /root/data/*.gz -d /root/uncom
But this is failing with :
gunzip: /root/uncom is a directory... (2 Replies)
Discussion started by: hoyanet
2 Replies