Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I would like to add the .zip extension to all files. I tried this, however it does not work:

ls | awk '{print $1 " " $1".zip"}' | xargs mv -f
share|improve this question
add comment

4 Answers 4

up vote 1 down vote accepted

Searching - few links:

  1. http://stackoverflow.com/questions/1108527/recursively-add-file-extension-to-all-files
  2. http://stackoverflow.com/questions/6114004/add-file-extension-to-files-with-bash

    man rename:

    NAME rename - renames multiple files

    SYNOPSIS rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]

    DESCRIPTION "rename" renames the filenames supplied according to the rule specified as the first argument. The perlexpr argument is a Perl expression which is expected to modify the $_ string in Perl for at least some of the filenames specified. If a given filename is not modified by the expression, it will not be renamed. If no filenames are given on the command line, filenames will be read via standard input...

man wiki: http://en.wikipedia.org/wiki/Man_page

share|improve this answer
    
thx, based on that I was able to do it like this - ls | xargs -I % mv % %.zip –  UAdapter Oct 31 '11 at 9:30
add comment
for f in * ; do 
  mv "$f" "$f.zip"
done
share|improve this answer
add comment

rename 's/$/\.zip/' *

Don't use xargs for that!

share|improve this answer
    
why don't use xargs? –  UAdapter Nov 1 '11 at 14:50
    
Well - there's just no reason! –  Adobe Nov 1 '11 at 15:13
add comment

This should do the trick:

mmv "./*" "./#1.zip"

(Although I have no idea why you would want to do this...)

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.