web-dev-qa-db-ja.com

ディレクトリ内の多くのファイルの拡張子を変更するにはどうすればよいですか?

.txt拡張子を持つディレクトリに多数のファイルがあるとします。

次のコマンドライン環境を使用して、これらすべてのファイルの拡張子を.cに変更するにはどうすればよいですか。

  • WindowsのPowerShell
  • windowsのcmd/DOS
  • Bashのターミナル
36
Root

Windowsでは、目的のディレクトリに移動して、次のように入力します。

ren *.txt *.c

PowerShellでは、Path.ChangeExtensionの代わりに -replace メソッドを使用することをお勧めします(発言には Ohad Schneider に感謝します):

Dir *.txt | rename-item -newname { [io.path]::ChangeExtension($_.name, "c") }

Linux(Bash)の場合:

for file in *.txt
do
 mv "$file" "${file%.txt}.c"
done
83
Smi