9

「.1」で終わるファイルがいくつかあります。たとえば、次のようになります。

example.file.ex1.1
example.file.ex2.1
example.file.ex3.1

末尾に「.1」を付けずにすべての名前をすばやく変更する方法はありますか (example.file.ex1、example.file.ex2 など)?

ありがとう!

4

3 に答える 3

13

はい、 renameでこれを試してください:

rename -n 's/\.1$//' *

-nテストが有効な場合 は、(dry-run モード スイッチ) を削除します。

警告 これを行うことができる場合とできない場合がある同じ名前の他のツールがあるので、注意してください。


次のコマンドを実行すると ( linux)

$ file $(readlink -f $(type -p rename))

そして、あなたは次のような結果を持っています

.../rename: Perl script, ASCII text executable

次に、これは適切なツールのようです=)

そうでない場合、それをデフォルト(通常はすでにそうです)にするにはDebian、次のような派生物を使用しUbuntuます。

$ sudo update-alternatives --set rename /path/to/rename

最後になりましたが、このツールはもともと、Perl の父である Larry Wall によって作成されました。

于 2013-08-25T22:23:04.757 に答える
5

純粋な bash ソリューション:

for curFile in example.file.*.1; do
    mv -- "$curFile" "${curFile:0:-2}"
done
于 2013-08-25T22:22:58.027 に答える