rename files using "system" function
2 views (last 30 days)
Show older comments
I want to rename my files using the "rename" command in "system" function like this:
oldname = 'Michael_Jackson-Beat_It.mp3"
newname = 'Michael Jackson - Beat It.mp3"
system(['rename ' oldname ' ' newname]);
I'm producing the "newname"s automatically from the oldnames and doing this in a huge for loop.
But it doesn't work when there's a space in the name strings, I think due to the "rename" command... How can I solve this problem?
thanks,
0 Comments
Answers (2)
Azzi Abdelmalek
on 3 Mar 2013
Edited: Azzi Abdelmalek
on 3 Mar 2013
oldname = 'Michael_Jackson-Beat_It.mp3'
newname = 'Michael Jackson - Beat It.mp3'
copyfile(oldname,newname)
1 Comment
Walter Roberson
on 3 Mar 2013
Edited: Jan
on 4 Mar 2013
It would be movefile() rather than copyfile()
Walter Roberson
on 3 Mar 2013
Edited: Walter Roberson
on 3 Mar 2013
system(['rename ''' oldname ''' ''' newname '''']);
2 Comments
Jan
on 4 Mar 2013
Under Windows I'd prefer the double quotes:
system(['rename "' oldname '" "' newname '"']);
Walter Roberson
on 4 Mar 2013
Under non-Windows systems, if the file names contained dollar-signs, the dollar-signs would trigger substitution (or other effects) inside of double-quotes but not inside of single-quotes. For example,
copy "foo.bar" "foo-$PWD"
would trigger PWD to be expanded rather than being treated as a literal string.
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!