Find most recent file and copy to another directory.


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Find most recent file and copy to another directory.
# 8  
Old 04-06-2015
Add the additional step to your script:
Code:
        NO=${T##*[A-Z]}
        NO=${NO%.*}
        [[ 10#$NO -gt $X ]] && echo mv $FN ./NEWDIR/

# 9  
Old 04-07-2015
The "extension" should already have disappeared with T=${FN%.*}. Did the file name have two "extensions"? Please post it.
# 10  
Old 04-07-2015
From the 1st post, we have files:
Code:
.....0127.abc
.....0127.abc.sav
.....0127.abc.log

# 11  
Old 04-08-2015
I think your problem can be resolved by Jim suggestion using mtime option in find command .

For more clarity you need to analyse/ provide the couple of days files ls -ltr output and also provide the general format of the files which you want to move the files .So that things can have more visibility.
# 12  
Old 04-08-2015
Hi RudiC,

Thanks for all your help. Did research to better understand shell coding when I had a V8. As I digested your code, I realized that I was going about coding the script all wrong. Looking to much into it. It also helps to have all the information on how the file exists in the directory. Apologize for not providing all the details. Referencing your code and how the file is listed in source directory, wrote script as a new user like myself would understand. Thanks again for all your help and support.

Code:
    (1)    (2)   (3)     (4)    (5)    (6) (7)   (8)           (9)
-rwx-----   1  abcde   abcde   1234567 Jan  1  12:00 ABCD_ABC_Abc_AB0123.abc

Code:
#!/bin/bash
cd /abcd/efgh/ijkl/mnop/ #(Source directory)
for fname in `ls -ltr *.abc | tail -1 | awk '{print $9}'` #(list "ls -ltr" only most current files that end
                                                          # with "*.abc" and then take the 9th field and
                                                          # assign it to fname.  So fname is assigned
                                                          # "ABCD_ABC_Abc_AB0123.abc")
do
  if [ -f /abcd/efgh/ijkl/mnop/qrst/$fname ] #(checks "-f" destination directory if file fname exists)
  then
     echo "File exits" #(It exits nothing happens)
     exit 0
  else
  cp $fname /abcd/efgh/ijkl/mnop/ #(if it doesn't exist copies fname to destination directory)
  echo "Copied" $fname
  fi
done


Last edited by askvip; 04-09-2015 at 11:44 AM.. Reason: Add missing CODE tags, correct spelling errors, & change long blue comments in bash script into real bash comments.
# 13  
Old 04-08-2015
Some comments:
- You did already cd to the long path; no need to repeat it in the if clause.
- no need to ls -ltr | tail -1 | awk ... - just use ls and don't loop
# 14  
Old 04-13-2015
rsync could possibly be used here as well.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Help script find file most recent

Hi, I need to find the most recent files by their name from an X repertoire. The problem is that the name of the files is of type: POWERL10_20151203000.xml POWERL10_20151203001.xml POWERL10_20151202000.xml FIXED VALUE_DATENNN.xml NNN = Sequential number I would need to recover the... (4 Replies)
Discussion started by: verita
4 Replies

2. Shell Programming and Scripting

How to recursively copy directory only for recent files?

I love the -newerct flag for the Cygwin find command on windows. Can I use "/usr/bin/find . -newerct '3 hours ago'" to conditionally copy a directory tree so that only the files in the directory tree that are younger than 3 hours are copied to my destination directory such that the directory... (4 Replies)
Discussion started by: siegfried
4 Replies

3. Shell Programming and Scripting

How to find the recent file in many sub-directories?

Hi guys, Under my root directory there are many sub-directories which contains log file for every day of running. How can I find , in one command only, the recent log file in each sub-directory? For example, If I run the following: find . -name "exp_prod_*_*_yes_*_.log" -exec ls -ltr {} \;... (12 Replies)
Discussion started by: nir_s
12 Replies

4. UNIX for Dummies Questions & Answers

command to find most recent file

Hi, Here is my problem: I try to write a script to find data in a file named "data" for exemple. Let's say I am in the directory /x/y/z, there are several sub-directories in the "z" directory (each sub-directory has a file "data") and I am searching for the word "help". So I use this... (9 Replies)
Discussion started by: StephB
9 Replies

5. UNIX for Dummies Questions & Answers

How to find and copy files from one directory to another

Ok i have three directories Destination - /u/dir1 (has subdirectories dir2 which also has subdirectory dir3) Source1 - /u/test/files/dir1/dir2/dir3 Source2 - /u/out/images/dir1/dir2/dir3 What i would like to do is copy everything from Source1 and Source2 into the Destination directory.... (3 Replies)
Discussion started by: ziggy25
3 Replies

6. Shell Programming and Scripting

find and copy file to another directory..

Hi Everybody, i want a samll help to write a script. i had source location with :/user/bin (bin contains subdirectories with like names emails etc and had several files in each subdirectory) and target location with :/usr/scripts (having same subdirectories names and had some files)... (1 Reply)
Discussion started by: Reddy482
1 Replies

7. Shell Programming and Scripting

find the most recent file containing a certain string

I want to find the most recent file containing ' NORESETLOGS" I'm already here but, how to sort this now in a correct way ? By the way, my version of find does not know about 'fprint' find . -type f -exec grep -i " NORESETLOGS" {} \; -exec ls -l {} \; | grep -vi " RESETLOGS" (5 Replies)
Discussion started by: plelie2
5 Replies

8. Shell Programming and Scripting

crontab; copy most recent *.mpg file from local machine to smb storage device

Hello, I've been searching your forum for an answer to the following question and whilst I've seen several which may help I'm afraid my inexperience with UNIX systems has got the better of me and I'm incapable of piecing your considerable expertise together. Problem: I have a linux box which... (5 Replies)
Discussion started by: julezsht
5 Replies

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

10. UNIX for Dummies Questions & Answers

reading directory for most recent file?

Dear All, I'm trying to write a script that searches thru a directory looking for a most recent file and then scp that file. I have the scp working, but I don't know how to browse the directory and select the most recent file. The file name includes a date & time stamp (e.g.... (3 Replies)
Discussion started by: duncan_glover
3 Replies
Login or Register to Ask a Question