Rename multiple files


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Rename multiple files
# 1  
Old 06-10-2002
Question Rename multiple files

Hello,

I want to rename multiple files at a time and I don't know how to do it.

I have various ".mp3" files, like "band name - music name.mp3" and I want to remove the "band name" from all files.

Anybody knows how to do it using shell script or sed or even perl?

Thanks
# 2  
Old 06-10-2002
If you do a search for rename and files, you will come up with the following and more which should take care of your problem:
Rename files
# 3  
Old 06-10-2002
Hello,

Thanks for your help but my problem it's a quite different for that answers. I don't want to rename the extensions of my files. I want to change the name of my files like this:

"first name - second name.mp3" to "second name.mp3"

Thanks
# 4  
Old 06-10-2002
But did you bother to do the search yourself? If so, you would have found the rest of what you needed.
more renamed files

Part of the learning process is to do - not just have it done for you. This will give you almost what you are looking for....the PROD to TEST will help but YOU still have to think. It's the only way to learn.
# 5  
Old 06-10-2002
I executed the script:

for file in *.mp3
do
newfile=`echo $file | sed 's/black\ sabbath\ //g'`
file=`echo $file | sed 's/ /_/g'`
mv $file $newfile
done

and the result was:

mv: cannot access black_sabbath_music1.mp3
mv: cannot access black_sabbath_music2.mp3
mv: cannot access black_sabbath_music3.mp3
mv: cannot access black_sabbath_music4.mp3

my files are:

black sabbath music1.mp3
black sabbath music2.mp3
black sabbath music3.mp3
black sabbath music4.mp3

What is wrong?
# 6  
Old 06-10-2002
Remember, your problem was a little different.
I mentioned that it would help, not be your cure all.

Since you have spaces in your file names (at least according to your post), look at this and realize that the echo command would work the same as the mv command. Both need the quotes for files with spaces in the name.

for file in *.mp3
do
newfile=`echo $file | awk -F" " '{print $3}'`
echo "$file"
echo "$newfile"
done
# 7  
Old 06-10-2002
Sorry, should have kept your original script -

The problem with your script was you changed the variable file
for file in *.mp3
do
newfile=`echo $file | sed 's/black\ sabbath\ //g'`
file=`echo $file | sed 's/ /_/g'`
mv $file $newfile
done

If you had not changed what you were originally looking for, it may have worked - you also needed some quotes to move the files

for file in *.mp3
do
newfile=`echo $file | sed 's/black\ sabbath\ //g'`
mv "$file" $newfile
done
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Rename multiple files in one go

OS : Oracle Linux 6.8 shell : bash As shown below, I have multiple files like below (query1-extract_aa, query1-extract_ab, query1-extract_ac, ....) $ ls -l total 235680 -rw-rw-r-- 1 reportusr reportusr 30M May 3 11:25 query1-extract_aa -rw-rw-r-- 1 reportusr reportusr 30M May 3 11:25... (5 Replies)
Discussion started by: kraljic
5 Replies

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

3. Shell Programming and Scripting

Rename a multiple files

I have multiple files in folder which i want to rename. hence I am using the below command in my script by I get an error: export XXX_LOG_DIR="${LOG_DIR}/${XXX_HOST}/xxx/${REPORT_DATE}" mv $XXX_LOG_DIR/*.audit.gz $XXX_LOG_DIR/*.audit.log.gz But I get the below error: mv: target... (5 Replies)
Discussion started by: karan8810
5 Replies

4. Shell Programming and Scripting

How to rename multiple files at one go?

Hi, I have hundreds of files with XXX in their file name and I want to rename all of them with YYY in place of XXX. for ex: $ ls -1 123XXX789 345XXX678 Output $ ls -1 123YYY789 345YYY678 I know we can loop in each file and sed to replace and rename each file but ren *XXX* *YYY*... (4 Replies)
Discussion started by: reddyr
4 Replies

5. Shell Programming and Scripting

Rename multiple files

Hi, In my directory I have many files, for e.g. file_123 file_124 file_125 file_126 file_127 Instead of renaming these files one by one, I would like to rename them at a same time using same command... they should appear like 123 124 125 126 127 What command(awk or ls or... (3 Replies)
Discussion started by: juzz4fun
3 Replies

6. Shell Programming and Scripting

Rename multiple files

hello: I have multiple files with names like: somestring_y2010m01d01 somestring_y2010m01d02 .......... somestring_y2010m12d31 How... (4 Replies)
Discussion started by: sylcam
4 Replies

7. UNIX for Dummies Questions & Answers

help with multiple files rename...

Hi everyone, I'm very green in Linux. Please help me to solve my problem. I have thousands of files and I want to change their names. They have naming convection: prefix_date_date+1_suffix.nc prefix: ext-GLORY date_date+1: 20020101_20020102 and two types of suffix: gridV_R20020130 and... (3 Replies)
Discussion started by: makikicindy
3 Replies

8. UNIX for Dummies Questions & Answers

How to rename multiple files

Hi all, I have some files like: pickup.0000043200.t001.t001.data pickup.0000043200.t001.t002.data pickup.0000043200.t002.t001.data pickup.0000043200.t002.t002.data pickup.0000043200.t003.t001.data pickup.0000043200.t003.t002.data I need to rename these files to ... (4 Replies)
Discussion started by: a_dor8
4 Replies

9. Shell Programming and Scripting

now to rename multiple files

I have several hundred files in one directory which I need to move to another directory with the new extension, for example: /bb/data/rptmgr* are in the source directory need to be moved to /bb/data55/rptmgr*.new Is there an efficient way to do it? Thanks -A (4 Replies)
Discussion started by: aoussenko
4 Replies

10. Shell Programming and Scripting

rename multiple files

Hi, can anyone have a ksh script to rename multiple files (ie to remove .Z extension of the files) can someone correct this? for i in *.Z do var1 = substr($i, 1,at(".Z",$i)-1) mv $i $var1 done Thanks.. Antony (13 Replies)
Discussion started by: antointoronto
13 Replies
Login or Register to Ask a Question