Unix Script To Move Files Based On Grep


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Unix Script To Move Files Based On Grep
# 1  
Old 03-29-2010
Unix Script To Move Files Based On Grep

I am looking for advice on how to write a script that will rename and/or move files to a different directory based upon the results of a grep.

Let's say I have ten files in a directory. Some of them - not all - contain the text 'HELLO'. I would like to be able to grep the files for that text, then either rename the files (say, with an extension of ".hello", and/or move them to another directory.

I have made several attempts based on examples I've found on the 'net, but to no avail. Not even sure if this is possible.


Thanks for any info!
# 2  
Old 03-29-2010
Code:
for file in $list
do
  grep hello $file >/dev/null
  if [ $? = 0 ]
  then
   mv file
  fi
done

# 3  
Old 03-29-2010
Here is a solution that does not require you to build a list of file names first. If you have a set of file types like; *.txt, *.sh etc.
Code:
for x in $(find . -name "*.txt" -exec grep -l HELLO {} \;)
do
    mv $x ${x}.hello
done

# 4  
Old 03-30-2010
one liner

Code:
find . -type f -exec grep -il 'HELLO' {} \; -exec mv {} {}.hello \;

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Move files with a certain suffix based on how many files are in another folder

Hello, First time poster. I am looking for a way to script or program the process of moving files from one folder to another, automatically, based on the count of files in the destination folder. I was thinking a shell script would work, but am open to the suggestions of the experts... (6 Replies)
Discussion started by: comtech
6 Replies

2. Shell Programming and Scripting

Move files based on status

Hi UNIX Experts, Kindly help me in this requirement where i want to move files based on its status. For Eg: I have 3 dir's --FileBox Dir this directory will have all the files which i need to process (in informatica ETL Tool) --Succeeded Dir this directory will have files which... (4 Replies)
Discussion started by: kumarinfa
4 Replies

3. UNIX for Dummies Questions & Answers

Need script to move files based on month

Hi , I need a script which moves files based on month. Example : Apr 29 03:16 log4.txt Apr 29 03:16 log5.txt May 4 09:17 log1.txt May 4 09:17 log2.txt Move Apr files into Apr2015(Folder) Move May files into May2015(Folder). This is urgent requirement , if you can help me... (5 Replies)
Discussion started by: rockingvj
5 Replies

4. Shell Programming and Scripting

Need script to move files based on name

Hi folks, I'm new here and appreciate greatly any help. I have a bunch of files that need be moved and renamed. Fortunately, they are all in sequence... Present filename and path: /.catalog1/t76038_842-01 Move to: /.catalog1/76038-01 So, we need to drop the... (8 Replies)
Discussion started by: axslinger
8 Replies

5. Shell Programming and Scripting

grep for certain files using a file as input to grep and then move

Hi All, I need to grep few files which has words like the below in the file name , which i want to put it in a file and and grep for the files which contain these names and move it to a new directory , full file name -C20091210.1000-20091210.1100_SMGBSC3:1000... (2 Replies)
Discussion started by: anita07
2 Replies

6. Shell Programming and Scripting

Unix Script - Move and Unzip Files

Requirement Details: We have a folder named 'Inbound Files' that has many folders in it containing source files that have to be processed by Informatica system. We have zipped files, text files and csv files in those folders that have to be moved (cut and paste) from 'Inbound_Files' folder to... (3 Replies)
Discussion started by: haralebp
3 Replies

7. Shell Programming and Scripting

Script to move files based on Pattern don't work

Hi people, i need you help on this if you can. I have a script that does the move command when it searches for a that doesn't match the pattern. This Pattern is on a list. When it run's and doesn´t found no files but it haves 2 more folders it moves the folders too. Ex:... (1 Reply)
Discussion started by: osramos
1 Replies

8. UNIX for Dummies Questions & Answers

Move files based on year

Hi All, I have a directory which has crores of files since from 2003. I want to move ony the 2003 files to another directory. Please help (9 Replies)
Discussion started by: IHK
9 Replies

9. UNIX for Dummies Questions & Answers

UNIX command: mv - Objective: move files based on timestamp

I was wondering if there was a command to move files from one directory to another subdirectory based on the timestamp, i.e. moving from directory A files that have a timestamp of before the year 2005 into directory B. Directory B is a subdirectory located in directory A. I was advised to... (4 Replies)
Discussion started by: HLee1981
4 Replies

10. UNIX for Dummies Questions & Answers

Move files based on year

I have a directory which has crores of files since from 2003. I want to move only the 2003 files to another directory. Please help in doing this. Thanks (1 Reply)
Discussion started by: IHK
1 Replies
Login or Register to Ask a Question