我想将文件夹中的所有jpg文件重命名为统一的格式,例如Picture00000001.jpg,其中00000001是计数器。
在C#中这很容易实现,但我认为这是PowerShell非常适合处理的基本任务。
我猜应该像这样:
在C#中这很容易实现,但我认为这是PowerShell非常适合处理的基本任务。
我猜应该像这样:
$files = ls *.jpg
$i=0
foreach($f in $files) { Rename-Item $f -NewName "Picture"+($i++)+".jpg" }
但在我开始之前,我想要做两件事情:1)格式化计数器,2)确保这真的是一个好主意。
如果这听起来更像强迫症而不是好主意,请说出来。
ForEach-Object
提供begin
和process
脚本块吗?我得重新审视一些高尔夫 PE 问题。 - JoeyForEach-Object
的-Begin
和-End
参数是位置参数。是魔法吗? - Joeyhelp % -param begin
只告诉我这里只有“named”一种可能性。在help %
中也没有关于这种情况的示例或其他文档。这就是我为什么会感到疑惑的原因。但很高兴知道这个方法是可行的。 - Joey