web-dev-qa-db-ja.com

ターミナル経由ですべてのファイルに拡張子を追加する方法

すべてのファイルに.Zip拡張子を追加したいと思います。私はこれを試しましたが、うまくいきません:

ls | awk '{print $1 " " $1".Zip"}' | xargs mv -f
9
UAdapter

検索-いくつかのリンク:

  1. すべてのファイルにファイル拡張子を再帰的に追加-スタックオーバーフロー
  2. 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

2
user26687
for f in * ; do 
  mv "$f" "$f.Zip"
done
15
elmicha
rename 's/$/\.Zip/' *

そのためにxargsを使用しないでください!

12
Adobe

それを行う非常に簡単な方法は次のとおりです。

現在の拡張子を保持する場合:

for i in *; do mv $i ${i}.Zip; done     

現在の拡張子を置き換えたい場合:

for i in *; do mv $i ${i%.*}.Zip; done
3
dmx

これでうまくいくはずです:

mmv "./*" "./#1.Zip"

(なぜあなたはこれをしたいのか分かりませんが...)

0
xubuntix