Change filename extensions..from command line


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Change filename extensions..from command line
# 1  
Old 01-24-2011
Change filename extensions..from command line

I want to change the extensions of a folder full of files (some of the files are located in subfolders as well) to another extension, but instead of replacing the files I want the new files to be copied into a newly created folder.

Here is the folder structure:

/Downloads/3eb
/Downloads/3eb/album1
/Downloads/3eb/album2
/Downloads/3eb/album3
/Downloads/3eb/newdir

In each album1 folder there are .flac files, and I want to convert them all to .mov files and copied to /Downloads/3eb/newdir. Does that make sense?

I have tried the following command ran after cd'ing to /Downloads/3eb, but it returns an error (to follow):
Code:
for file in album*/*.flac ; do mv "$file" "newdir/`echo $file | sed 's/\(.*\.\)flac/\1mov/'`" ; done

The error:
Code:
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/05 - One in Ten.flac': No such file or directory

Can anyone help?
# 2  
Old 01-24-2011
Code:
cd /Downloads/3eb/
for file in album*/*.flac
do
  nf=${file#*/}
  mv "$file" "newdir/${nf%flac}mov"
done

# 3  
Old 01-24-2011
Thanks cfajohnson,

When I type that in the command prompt and hit enter after typing done, it runs through every file giving the same error (here's a snippet):

Code:
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/09 - Water Landing.flac': No such file or directory
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/10 - Dao of St. Paul.flac': No such file or directory
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/11 - Monotov's Private Opera.flac': No such file or directory
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/12 - Carnival Barker (Instrumental).flac': No such file or directory
mv: cannot rename 'Third Eye Blind - Ursa Major 2009/13 - Why Can't You Be (With Kimya Dawson).flac': No such file or directory

What did I do wrong?
# 4  
Old 01-24-2011

It works for me.

Did you cut and paste or retype it?

If you retyped it, you probably made a typo.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. OS X (Apple)

Change Name of Bluetooth Device from Command Line in macOS

Mac Version 10.15.2 (macOS Catalina) Does anyone know how to change the name of a connected bluetooth device from the command line on macOS? I am having trouble with various bluetooth devices which I cannot get the "rename" option in the GUI to "save" properly and so I cannot rename a few... (0 Replies)
Discussion started by: Neo
0 Replies

2. Shell Programming and Scripting

How to pass a filename as a command line argument

Hi,I have a script which is given below :#!/bin/bash. ini_script.shdb2 connect to $DB_NAME user $DB2_UID using $DB2_PASSWORDfor file in `ls -1 ./sql/ddw/`do echo "Executing the file $file" echo db2 -tvf $filedonedb2 quiti want this script to accept directorie's names present in... (1 Reply)
Discussion started by: ektubbe
1 Replies

3. Shell Programming and Scripting

one line command to change mode only if necessary

hi, sorry for posting this for a quick answer. Is there a one line command to change permissions on files in a directory to a given mode (say 554) and only for those files that do not already have that mode? Running chmod updates the last access/modified timestamp on the files, and i want to... (11 Replies)
Discussion started by: ysrini
11 Replies

4. Shell Programming and Scripting

Multiple file rename (change in filename in unix with single command

Dear All, Please help ! i ham having 300 file with E.G. PMC1_4567.arc in seq. like PMC1_4568.arc,PMC1_4569.arc ...n and so on.. i want all those file to be rename like PMC_4567.arc ,PMC_4568.arc .. mean i want to remove 1 from first file name .. pls help.. (6 Replies)
Discussion started by: moon_22
6 Replies

5. Shell Programming and Scripting

how to remove last two extensions of a filename

hi how to remove extensions of a file.. suppose i have a filename "gtk2-2.4.13-24.el4.x86_64.rpm" and i want the file name as "gtk2-2.4.13-24.el4" means want to remove last two "." extensions of a file can anyone help me in this thanks in advance srik (12 Replies)
Discussion started by: srikanthg
12 Replies

6. Shell Programming and Scripting

Using sed command to change end of line

I am looking to change a data file into a javascript string and this is the code that I am using: sed -i '' -e 's/^/str += "/' -e 's/$/";/' file.xml The first part -e 's/^/str += "/' works as intended, but the second part -e 's/$/";/' adds an additional newline to my file, so that instead of... (3 Replies)
Discussion started by: figaro
3 Replies

7. UNIX for Dummies Questions & Answers

Batch Renaming: Change files' extensions in many sub-directories

Hi all - I'm trying to rename a large number of files all at once and need some help figuring out the command line syntax to do it. I've already done quite a bit of research with the rename and mv commands, but so far haven't found a solution that seems to work for me. So: The files exist... (10 Replies)
Discussion started by: dave920
10 Replies

8. Shell Programming and Scripting

gzcat into awk and then change FILENAME and process new FILENAME

I am trying to write a script that prompts users for date and time, then process the gzip file into awk. During the ksh part of the script another file is created and needs to be processed with a different set of pattern matches then I need to combine the two in the end. I'm stuck at the part... (6 Replies)
Discussion started by: timj123
6 Replies

9. Shell Programming and Scripting

Accepting filename as command line param and writing to it

Hi, Is it possible to accept a filename as command line parameter and then write to that file using command redirection? i tried the below script. outputfile=`echo $1` echo "Writing to file" > 'echo $outputfile' exit $returncode but it isnt working. is there any other way to... (9 Replies)
Discussion started by: silas.john
9 Replies

10. UNIX for Advanced & Expert Users

How to change size of command line in unix

Hi, I'm trying to execute my program from $prompt by passing many parameters which is more than 300 charecters in line but unix not accepting those many charecters, could some one help me how to increase the size? thanks (7 Replies)
Discussion started by: krishna
7 Replies
Login or Register to Ask a Question