Rename many files


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Rename many files
# 8  
Old 04-03-2009
if you have Python, you can use the script in my sig called file renamer. eg usage
Code:
# ls -1
01_anote1.pdf
01_bnote1.pdf
01_control1.pdf
01_invoice_21.pdf
20_quote_l1.pdf

# filerenamer.py -p "(\d)\.pdf" -e ".pdf" -l "*.pdf"
==>>>>  [ /home/images/20_quote_l1.pdf ]==>[ /home/images/20_quote_l.pdf ]
==>>>>  [ /home/images/01_invoice_21.pdf ]==>[ /home/images/01_invoice_2.pdf ]
==>>>>  [ /home/images/01_anote1.pdf ]==>[ /home/images/01_anote.pdf ]
==>>>>  [ /home/images/01_control1.pdf ]==>[ /home/images/01_control.pdf ]
==>>>>  [ /home/images/01_bnote1.pdf ]==>[ /home/images/01_bnote.pdf ]

# filerenamer.py -p "(\d)\.pdf" -e ".pdf"  "*.pdf"
/home/images/20_quote_l1.pdf  is renamed to  /home/images/20_quote_l.pdf
/home/images/01_invoice_21.pdf  is renamed to  /home/images/01_invoice_2.pdf
/home/images/01_anote1.pdf  is renamed to  /home/images/01_anote.pdf
/home/images/01_control1.pdf  is renamed to  /home/images/01_control.pdf
/home/images/01_bnote1.pdf  is renamed to  /home/images/01_bnote.pdf
# ls -1
01_anote.pdf
01_bnote.pdf
01_control.pdf
01_invoice_2.pdf
20_quote_l.pdf

remove -l to commit
# 9  
Old 04-03-2009
Quote:
Originally Posted by siquadri
Can someone please explain this command
Code:
sed 's/\(.*\)1\(\..*\)/mv & \1\2/' | sh

With sed you can save substrings with \(.*\) and recall them back with \1, \2, \3 etc.

Code:
\(.*\)1\(\..*\)

Here we saved the 1st portion \(.*\) before the 1 and the 2nd portion after the 1.

Code:
mv & \1\2

The string is substituted with mv & and the 2 portions. The & is a character with a special meaning and is replaced with the matched string.

Regards
# 10  
Old 04-30-2009
I wish I were better at sed and awk. Sometimes, doing this is easier and is more understandable if you have to look at the code again one day and your sed is shaky like mine:

Code:
ls *.pdf 2>/dev/null|while read file_nm ; do
   mv $file_nm ${file_nm%%1.*}.pdf
done

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

SBATCH trinity for multiple files and rename/move the output files

Hey guys, I have wrote the following script to apply a module named "trinity" on my files. (it takes two input files and spit a trinity.fasta as output) #!/bin/bash -l #SBATCH -p node #SBATCH -A <projectID> #SBATCH -n 16 #SBATCH -t 7-00:00:00 #SBATCH --mem=128GB #SBATCH --mail-type=ALL... (1 Reply)
Discussion started by: @man
1 Replies

2. Shell Programming and Scripting

Script to unzip files and Rename the Output-files

Hi all, I have a many folders with zipped files in them. The zipped files are txt files from different folders. The txt files have the same names. If i try to find . -type f -name "*.zip" -exec cp -R {} /myhome/ZIP \; it fails since the ZIP files from different folders have the same names and... (2 Replies)
Discussion started by: pmkenya
2 Replies

3. UNIX for Dummies Questions & Answers

Rename all .sh files to .pl

I have various .sh and .pl files in one directory. I want to rename all the .sh files to .pl i.e testscript.sh --> testscript.pl I am trying to use mv *.sh *.pl It doesnt work though!! (3 Replies)
Discussion started by: chrisjones
3 Replies

4. Shell Programming and Scripting

How to rename files

Hi Guys, I have to rename about 180 files in different folders in linux. For example, abc_110117.txt eff_110117.txt zzz_110117.txt After renaming the files, these files should like like abc.txt eff.txt zzz.txt I created a small script to rename the files like ls... (2 Replies)
Discussion started by: naveed
2 Replies

5. Shell Programming and Scripting

Rename files

I wrote a script that accepts filenames as argument but I am having difficulty if filename has both(uper/lower) cases..so I want to write a script that accepts one or more filenames as arguments and converts filenames to uppercase..(actually rename files..) (2 Replies)
Discussion started by: aadi_uni
2 Replies

6. Shell Programming and Scripting

rename files Ax based on strings found in files Bx

Hi, I'm not very experienced in shell scripting and that's probably why I came across the following problem: I do have several hundred pairs of text files (PF00x.spl and PF00x.shd) where the first file (PF00x.spl) needs to be renamed according a string that is included in the second file... (12 Replies)
Discussion started by: inCH
12 Replies

7. Shell Programming and Scripting

Rename files

Hi, I wanna rename bunch of files which has ":" to -. ie. rename file named file1:file1 to file1-file1. any ideas? (2 Replies)
Discussion started by: linuxaddict7
2 Replies

8. Shell Programming and Scripting

Rename files

Hello, I've a list of file like this img_001 img_22 img_44 and I would rename all with this form photo_0001 photo_0002 photo_0003 photo_0004 suggestions?Thanks to all. (2 Replies)
Discussion started by: cv313x
2 Replies

9. UNIX for Dummies Questions & Answers

rename files help

Hi, I've already search for this issue but I found different scripts for rename files, but I don't know how to customize it for my needs. Here's what I want to do: I have a lot of files inside many directories, like this: /aa/01.txt /aa/02.txt /ab/01.txt /ab/02.txt I want all those files... (2 Replies)
Discussion started by: piltrafa
2 Replies

10. Shell Programming and Scripting

rename files

hey all, I have files in the format of ABCD20061101 and ABCDEF20061101 in one directory, I would like to change all ABCD20061101 to ABCDEF20061101 and the problem is if I do a simple pattern match of ABCD, then those ABCDEF20061101 would also... (2 Replies)
Discussion started by: mpang_
2 Replies
Login or Register to Ask a Question