2012-08-25 69 views
32

假设我在一个扩展名为.txt的目录中有大量文件。如何更改目录中许多文件的扩展名?

我如何使用下面的命令行环境中的所有这些文件的扩展名更改为.c

  • Powershell的在Windows
  • CMD/DOS在Windows
  • 在bash终端
+2

不知道为什么这被关闭(问题似乎很清楚)但在任何情况下基本上相同的问题可以在这里找到(打开):http://stackoverflow.com/questions/13382638/how-can-i-bulk-rename-files- in-powershell/13382966 –

+0

@OhadSchneider ...不幸的是, itle(尽管不是实际使用的情况)是“我怎样才能批量重命名PowerShell中的文件?”,这个答案更为广泛。 Smi的答案是延期付款。不过,不知道为什么这被标记为过于宽泛。 ¯\\ _(ツ)_ /¯ – ruffin

回答

64

在Windows上,转到所需的目录,然后键入:

ren *.txt *.c 

在PowerShell中,最好是使用Path.ChangeExtension方法,而不是-replace(感谢Ohad Schneider的备注):

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

对于Linux(击):

for file in *.txt 
do 
mv "$file" "${file%.txt}.c" 
done 
相关问题