GNU/Linux >> Linux の 問題 >  >> Linux

ディレクトリ内のファイルの名前を変更しますか?

次のファイルなどのディレクトリ内のファイルの名前を変更する方法:PMC21375.pdf.txt 、名前を21375.txtに変更する必要があります 。つまり、両方のPMCを削除する必要があります およびpdf 各ファイル名から。

承認された回答:

perlのrenameを使用 :

rename 's/(PMC|.pdf)//g' *pdf.txt 

デモ:

$ ls *txt
PMC21375.pdf.txt
$ rename -n 's/(PMC|.pdf)//g' *txt 
PMC21375.pdf.txt -> 21375.txt

shellから 促す。これは非常に便利です。私と同じようにperlコードを代用することができます。

-nを削除できます (ドライランモードスイッチ)テストが有効になったとき。

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

次のコマンドを実行した場合(linux

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

のような結果が得られます
.../rename: Perl script, ASCII text executable

それならこれは正しいツールのようです=)

そうでない場合は、Debianのデフォルト(通常はすでにそうです)にします Ubuntuのような派生物 :

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

/path/to/renameを置き換えます perl's renameのパスへ コマンド。

最後になりましたが、このツールは元々、Perlのお父さんであるLarryWallによって作成されました。


Linux
  1. Linuxですべてのファイルとディレクトリ名を小文字に変更

  2. Linuxでファイルの名前を変更する方法

  3. PDFファイルをgrepする方法は?

  1. ディレクトリ付きの猫ファイル?

  2. Linux でファイル名を大文字に変更

  3. Vim でディレクトリ内のファイルの名前を変更できますか?

  1. Linuxでディレクトリの名前を変更する方法

  2. ディレクトリ内のすべてのファイルを解凍します

  3. ディレクトリ内のすべてのファイルで単語のすべての出現を変更する方法