Sponsored Content
Top Forums UNIX for Advanced & Expert Users copy files with diresctory hirarchy Post 302081969 by tayyabq8 on Saturday 29th of July 2006 12:02:22 PM
Old 07-29-2006
With recursive function, which was missing in earlier version:
Code:
#! /bin/ksh

inDir="/home/admin/temp1"       #your source directory goes here
outDir="/home/admin/temp"       # your taget directory goes here
let count=0

#Copy *.cpp files from your source directory to the target, if any
cp $inDir/*.cpp $outDir 2>/dev/null

#Function, which copies *.cpp of each directory recursively

cpfiles () {
dir=$1
if [[ ! -d $outDir/$dir ]]; then
        mkdir $outDir/$dir
fi

ext=""

for filename in $inDir/$dir/*; do
        if [[ -d $filename ]]; then
                a=${filename#$inDir/}
                cpfiles $a
        else
                ext=`echo $filename | cut -d. -f2`
                if [[ $ext = "cpp" ]]; then
                        cp $filename $outDir/$1
                        let count=$count+1
                fi
        fi
done
}

# Only directories are listed, if you have -d option you can only use
# ls -d instead of following command in loop

for dirname in `ls -l $inDir | grep '^d' | awk '{print $9}'` ; do
           cpfiles $dirname
done

echo "$count files copied" 2>&1

Any suggestions would be highly appreciated.

Regards,
Tayyab

Last edited by tayyabq8; 07-30-2006 at 06:31 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

copy files

Hi, Under the home directory, I want to search for all the *.xml files and move them all into another folder under home. Is it possbile using a single find command . Regards, Chirayu Sutaria (6 Replies)
Discussion started by: chirayus
6 Replies

2. Shell Programming and Scripting

Copy all files except one

How can I copy all the files in a given directory except one. cheers (7 Replies)
Discussion started by: spaceship
7 Replies

3. UNIX for Dummies Questions & Answers

copy only new files or files of a different size

hello i would like to copy files from 1 location to a nother, but it has only to copy files which are newer or have a different filesize. all has to be logged to a copy.log file (als skipped files should be in the log) is this possible with the cp command (1 Reply)
Discussion started by: arnoldg
1 Replies

4. UNIX and Linux Applications

Copy all files

how i can copy all files " select all " in one step t try command cp -t (2 Replies)
Discussion started by: walidfinder
2 Replies

5. UNIX for Dummies Questions & Answers

copy files

Hi Team, I am unable to copy the files, when i run the below script, i am getting error as file not present, not sure what i am missing. # File to be looked upon File_Pattern='*.zip' TMP_FILE=flagfile Check=`find $Directorypath -name $File_Pattern -type f -newer $TMP_FILE -print |... (6 Replies)
Discussion started by: Naveen_5960
6 Replies

6. Solaris

How to safely copy full filesystems with large files (10Gb files)

Hello everyone. Need some help copying a filesystem. The situation is this: I have an oracle DB mounted on /u01 and need to copy it to /u02. /u01 is 500 Gb and /u02 is 300 Gb. The size used on /u01 is 187 Gb. This is running on solaris 9 and both filesystems are UFS. I have tried to do it using:... (14 Replies)
Discussion started by: dragonov7
14 Replies

7. Shell Programming and Scripting

how to copy files followed by list of names of all the files in /etc?

....... (2 Replies)
Discussion started by: pcbuilder
2 Replies

8. Red Hat

Unable to copy files due to many files in directory

I have directory that has some billion file inside , i tried copy some files for specific date but it's always did not respond for long time and did not give any result.. i tried everything with find command and also with xargs.. even this command find . -mtime -2 -print | xargs ls -d did not... (2 Replies)
Discussion started by: before4
2 Replies

9. UNIX for Dummies Questions & Answers

Copy files from one drive to another, keeping most recently modified files

Hi all, I am a bit of a beginner with shell scripting.. What I want to do is merge two drives, for example moving all data from X to Y. If a file in X doesn't exist in Y, it will be moved there. If a file in X also exists in Y, the most recently modified file will be moved to (or kept) in... (5 Replies)
Discussion started by: apocolapse
5 Replies

10. Shell Programming and Scripting

Copy all files together

Hi imagine that i have some data files like: test.20150902 test.20150903 test.20150904 i would like to create one single file automatically (like cat test.20150902 test20150903 > output) in order to copy all files togheter with a time order. Thanks! Regards Please use... (2 Replies)
Discussion started by: Board27
2 Replies
cpio.h(3HEAD)                                                         Headers                                                        cpio.h(3HEAD)

NAME
cpio.h, cpio - cpio archive values SYNOPSIS
#include <cpio.h> DESCRIPTION
Values needed by the c_mode field of the cpio archive format are described as follows: Name Description C_IRUSR Read by owner C_IWUSR Write by owner C_IXUSR Execute by owner C_IRGRP Read by group C_IWGRP Write by group C_IXGRP Execute by group C_IROTH Read by others C_IWOTH Write by others C_IXOTH Execute by others C_ISUID Set user ID C_ISGID Set group ID C_ISVTX On directories, restricted deletion flag C_ISDIR Directory C_ISFIFO FIFO C_ISREG Regular file C_ISBLK Block special C_ISCHR Character special C_ISCTG Reserved C_ISLNK Symbolic link C_ISSOCK Socket The header defines the symbolic constant: MAGIC "070707" ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ SEE ALSO
pax(1), attributes(5), standards(5) SunOS 5.10 10 Sep 2004 cpio.h(3HEAD)
All times are GMT -4. The time now is 05:42 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy