Copy all files in 1 directory to another usinge for-in loop


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
Special Forums UNIX Desktop Questions & Answers Copy all files in 1 directory to another usinge for-in loop
# 1  
Copy all files in 1 directory to another usinge for-in loop

I was looking to get some help with copying files in one directory to another using a for-in loop. My script file is called copyfile and here is what I have:
Code:
for file in $(ls -a $1)
do
    cp $file ~/dir-2 
done

When I run copyfile dir-1 this is what I get

Code:
cp: omitting directory `.'
cp: omitting directory `..'
cp: cannot stat `abc': No such file or directory
cp: cannot stat `def': No such file or directory
cp: cannot stat `file1': No such file or directory
cp: cannot stat `file2': No such file or directory
cp: cannot stat `file3': No such file or directory
cp: cannot stat `file4': No such file or directory
cp: cannot stat `file5': No such file or directory
cp: cannot stat `file6': No such file or directory
cp: cannot stat `ghi': No such file or directory

Thanks in advance!

---------- Post updated at 02:32 AM ---------- Previous update was at 02:13 AM ----------

I think I may have actually solved the issue myself. It seems to work when I put

Code:
for file in $(ls -a $1)
do
     cp $1/$file dir-2
done

I would appreciate it if someone could tell me how I'd be able to copy directories and files both.

Last edited by Yogesh Sawant; 03-10-2011 at 05:44 AM.. Reason: added code tags
# 2  
At first,you need to know weather $file is a regular file or directory.
Code:
  1 #! /bin/bash
  2 
  3 dest=$1
  4 for i in `ls -a1`;do
  5    [[ -d $i ]] && cp -r $i $dest && continue
  6    cp $i $dest
  7 done

Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #799
Difficulty: Medium
In digital numeral systems, the radix is the number of unique digits minus 1.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to copy a directory without specific files?

Hi I need to copy a huge directory with thousands of files onto another directory but without *.WMV files (and without *.wmv - perhaps we need to use *.). Pls advise how can I do that. Thanks (17 Replies)
Discussion started by: reddyr
17 Replies

2. Shell Programming and Scripting

Copy the files in directory and sub folders as it is to another directory.

How to copy files from one directory to another directory with the subfolders copied. If i have folder1/sub1/sub2/* it needs to copy files to folder2/sub1/sub2/*. I do not want to create sub folders in folder2. Can copy command create them automatically? I tried cp -a and cp -R but did... (4 Replies)
Discussion started by: santosh2626
4 Replies

3. 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

4. UNIX for Dummies Questions & Answers

Copy files into another directory

I have a folder will a lot of documents (pdf, xls, doc etc.) which users have uploaded but only 20% of them are currently linking from my html files. So my goal is to copy only the files which are linked in my html files from my Document directory into another directory. Eg: My documents exist... (5 Replies)
Discussion started by: ankitha
5 Replies

5. UNIX for Dummies Questions & Answers

How to copy all files into the same directory

Dear All, Again I have another simple question. :confused: I want to write a csh which can copy all files of a current directory with a new name in the same directory, I mean: If I have tree bird apple as files in a directory I want to give ,say number 007 as argument to my csh and it copies... (3 Replies)
Discussion started by: dreamer0085
3 Replies

6. Shell Programming and Scripting

Loop folders, delete files, copy new ones

Folks, I am hopeful that you may be able to help me out with writing a script that can be run nightly (as cron?) to loop through all subfolders within the "/media" directory, delete all of the files in each of them, and then copy in all of the files from the "/home//sansa" directory to each of... (6 Replies)
Discussion started by: acraig
6 Replies

7. Shell Programming and Scripting

Loop to copy like files

Hi, I need to write a script that copies all .zip files in the subdirectories of ~100 folders. No clue how to write a loop that goes into each folder, searches for a .zip file, and copies it and extracts it to a unique location. I imagine something like cp -f /home/folder1/*.zip... (6 Replies)
Discussion started by: nez
6 Replies

8. Shell Programming and Scripting

find files and copy into a directory

hi all, can u please help me in finding all ksh file in directory and including all subdirectories and then copy those files into another directory. thanks in advance -bali (4 Replies)
Discussion started by: balireddy_77
4 Replies

9. Shell Programming and Scripting

Copy files from one directory to another

Hi when copy the files from one directory to another as like below,it is tried to copy *. as a file. cp /home/rha/*. My objective is to copy all the files (don't care about case sensitive), Thanks in advance for your valuable reply. (1 Reply)
Discussion started by: HAA
1 Replies

10. Shell Programming and Scripting

Copy files from one directory to another

I need to copy about 13 Tb of data from one directory and subdirectories to the other (another mount point). If I run this as a cron, say between 10 pm and 7 am, not all of the files will be copied over. Is there a way of 'resuming' the copy the following evenings until all files are copied over? (0 Replies)
Discussion started by: hd2006
0 Replies