cd to multiple directories and gzipping files within


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting cd to multiple directories and gzipping files within
# 1  
Old 10-30-2007
cd to multiple directories and gzipping files within

I am working on a Korn shell script that will cd into multiple directories that are listed in a flat file and gzip the contents of each directory.
So far, this is what I have:

1) Find the 4 largest directories and place them into the file foo

du -sk /some/directory/* | sort -rn | head -4 > foo

Sample output: 390216 /first/Big/Directory
44441 /second/big/Foo Junk <---notice space after Foo
22873 /third/big/Dir
11817 /fourth/big/Dir_ectory

2) So that I can capture directories that may have a space in them, I am using the following:

cat foo |\
sed -n 's/^[0-9]*\(.*\)$/\1/p' | sed 's/^[ \t]*//;s/[ \t]*$/"/' |\
sed -n 's/\(.*\)/"\1/p' > newfoo

Sample output from above now appears as output below in file called newfoo:
"/first/Big/Directory"
"/second/big/Foo Junk"
"/third/big/Dir"
"fourth/big/Dir_ectory"

Based on the file newfoo above, how can I cd into each of those directories and gzip the contents ? Everything I try ends up in messages basically stating that it can't find or stat the directories. Any suggestions or help would be appreciated.
sunsysadm2003
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Renaming files in multiple directories

Hi I have the following file structure and I want to rename all the abc.jar files to abc_backup.jar rock@server:~/rakesh> ls -R .: test1 test2 test3 ./test1: abc.jar ./test2: abc.jar ./test3: abc.jar (2 Replies)
Discussion started by: rakeshkumar
2 Replies

2. Shell Programming and Scripting

Help with zipping files in multiple directories

I'm trying to zip multiple files from within certain directories which are named out. find . -name "*_out -print | xargs zip * I get this error : A file or directory in the path name does not exist how do I get this to work from within my KSH script? (2 Replies)
Discussion started by: Bperl1967
2 Replies

3. Shell Programming and Scripting

perform 3 awk commands to multiple files in multiple directories

Hi, I have a directory /home/datasets/ which contains a bunch (720) of subdirectories called hour_1/ hour_2/ etc..etc.. in each of these there is a single text file called (hour_1.txt in hour_1/ , hour_2.txt for hour_2/ etc..etc..) and i would like to do some text processing in them. Each of... (20 Replies)
Discussion started by: amarn
20 Replies

4. Shell Programming and Scripting

FTP multiple files from multiple directories

I have multiple files that starts as TRADE_LOG spread across multiple folders in the given structure.. ./dir1/1/TRADE_LOG*.gz ./dir2/10/TRADE_LOG*.gz ./dir11/12/TRADE_LOG*.gz ./dir12/13/TRADE_LOG*.gz when I do ftp uisng mput from the "." dir I am getting the below given error mput... (1 Reply)
Discussion started by: prasperl
1 Replies

5. Shell Programming and Scripting

Need Assistance with gzipping files with same names

Hello, I have an issue on a webserver where I have a perl script rotating and moving the logs to an archive directory where they are gzipped. This is working fine. The problem is when there is tracing enabled on my webserver where the tracelogs are rotated whenenver they reach 100Meg and they... (2 Replies)
Discussion started by: techwiz45
2 Replies

6. Shell Programming and Scripting

get files from multiple directories using FTP

Hi, I need to download multiple files in multiple directores from other Unix server. The files could have been created by differnet user. I can use root account but I want the preserve the owner and time of the remote file. Need help on how I can do this using FTP. Thanks, Amit (2 Replies)
Discussion started by: amit1209
2 Replies

7. UNIX for Dummies Questions & Answers

copy multiple files in different directories

I have a report file that is generated every day by a scheduled process. Each day the file is written to a directory named .../blah_blah/Y07/MM-DD-YY/reportmmddyy.tab I want to copy all of this reports to a separate directory without having to do it one by one. However, if I try cp... (3 Replies)
Discussion started by: ken2834
3 Replies

8. UNIX for Dummies Questions & Answers

gzipping large (2+ gb) files.

Is it possible? I am trying to do it with gzip 1.2.4 and it comes back saying the file type is too large. Any way to compress massive things? (2 Replies)
Discussion started by: LordJezo
2 Replies

9. Shell Programming and Scripting

FTP multiple files to different directories

The script below is written to ftp files to different directories on the destination server, but I'm not sure whether I have written the code correctly or not. Can anyone help me on this? #!/bin/sh FILE_NAMES="FileA FileB FileC" SERVER=xxxx USERID=abcd PASSWD=xxxxx... (12 Replies)
Discussion started by: abrd600
12 Replies

10. UNIX for Dummies Questions & Answers

tarring and gzipping dump files

Say I want to transfer several dump files from a Solaris machine onto a Win2k machine for storage. It was suggested that I tar and gzip the dump files before doing so. Is it completely necessary to use both of these utilities, or is it sufficient to compress multiple dump files into one gzip... (4 Replies)
Discussion started by: PSC
4 Replies
Login or Register to Ask a Question
cd(1)							      General Commands Manual							     cd(1)

NAME
cd - change working directory SYNOPSIS
[directory] DESCRIPTION
If directory is not specified, the value of shell parameter is used as the new working directory. If directory specifies a complete path starting with or directory becomes the new working directory. If neither case applies, tries to find the designated directory relative to one of the paths specified by the shell variable. has the same syntax as, and similar semantics to, the shell variable. must have execute (search) permission in directory. exists only as a shell built-in command because a new process is created whenever a command is executed, making useless if written and pro- cessed as a normal system command. Moreover, different shells provide different implementations of as a built-in utility. Features of as described here may not be supported by all the shells. Refer to individual shell manual entries for differences. If is called in a subshell or a separate utility execution environment such as: (which invokes on accessible directories) does not affect the current directory of the caller's environment. Another usage of as a stand- alone command is to obtain the exit status of the command. EXTERNAL INFLUENCES
International Code Set Support Single- and multi-byte character code sets are supported. Environment Variables The following environment variables affect the execution of The name of the home directory, used when no directory operand is specified. A colon-separated list of pathnames that refer to directories. If the directory operand does not begin with a slash character, and the first component is not dot or dot-dot, searches for directory relative to each directory named in the variable, in the order listed. The new working directory is set to the first matching directory found. An empty string in place of a directory pathname represents the current direc- tory. If is not set, it is treated as if it was an empty string. EXAMPLES
Change the current working directory to the directory from any location in the file system: Change to new current working directory residing in the current directory: or Change to directory residing in the current directory's parent directory: Change to the directory whose absolute pathname is Change to the directory relative to home directory: RETURN VALUE
Upon completion, exits with one of the following values: The directory was successfully changed. An error occurred. The working directory remains unchanged. SEE ALSO
csh(1), pwd(1), ksh(1), sh-posix(1), sh(1), chdir(2). STANDARDS CONFORMANCE
cd(1)