mmv(一括移動ユーティリティ)は、次のファイルの名前を変更するのに適しています。
- foo.txt
- バー.txt
- バズ.txt
到着する:
- 1.txt
- 2.txt
- 3.txt
マニュアルページは興味深いですが、指示に従うことはできません。
Rename all *.jpeg files in the current directory to *.jpg:
mmv '*.jpeg' '#1.jpg'
変数を#1
増加する整数に設定できますか?これが可能であることを疑うわけではありませんが、bashや他のスクリプトを使用するのは簡単または難しいでしょうか?
1.txt
簡略化のために可能な適用範囲の問題は無視される。または、サブディレクトリにコピーします。
また見なさい:
https://stackoverflow.com/questions/3211595/
答え1
私のシステムには対応するプログラムはありません。実は以前に聞いた記憶はありませんが、読んだことはありません。このマニュアルページのコピー、プログラムに必要な機能が含まれていないようです。ただし、特にこれを行う場合は、次のことを試すことができますmmv
。
mmv -an "*.txt" bogus.target > /tmp/mmv.list
何もしないで指定しなかっ-n
たmmv
場合はどうなるか報告してください-n
。-a
すべてのテキストファイルを1つのファイルに追加するように指示しますbogus.target
。実際、マニュアルページは非常によく似た例を提供します(しかしオプションはありません)。ここでは、複数のソースファイルを1つのファイルにまとめることができることを-n
確認するために使用しています。mmv
ターゲット。これにより、/tmp/mmv.list
次のファイルが作成されます。
bar.txt -> bogus.target
baz.txt -> bogus.target
foo.txt -> bogus.target
(私は辞書順(アルファベット順)またはディレクトリ順(順番に表示されることがあります)でファイルを一覧表示するとします。別の順序が必要な場合は、それを指定する方法を見つける必要があります。)それから処理します。ファイル(例:スクリプト、TBDを使用)を使用してbogus.target
、などの項目を置き換えます。その後実行1.txt
2.txt
3.txt
mmv < /tmp/mmv.list
注:私はまだこれを試していません(私が言ったように、私はソフトウェアを所有していないからです)。重要でない一部のファイルに対して最初にテストを実行し、またはこれを実行する前に、すべてのファイルをバックアップする必要があります。
また、これはおそらくあなたがリンクした質問に対する答えのいくつかと同じです。私が言ったように、特にmmv
。
PS私の答え(上記)は、以下から部分的にインスピレーションを受けました。これ。