yod*_*ode 1 powershell windows-10
我在当前目录中有这样的文件:
现在我想2
在它是偶数时添加到文件基名中。我的意思是我想要:
000252.png ? 000254.png
000254.png ? 000256.png
000256.png ? 000258.png
Run Code Online (Sandbox Code Playgroud)
换句话说,这是我想要的最终结果:
我如何使用PowerShell
来实现这一点?
假设工作目录包含所有要重命名的文件(并且只有那些文件),这里有一个单行来重命名它们:
dir . | sort -des | % { if ($_.BaseName % 2 -eq 0 ) { mv $_ $((2 + $_.BaseName).ToString("000000") + $_.Extension) } }
Run Code Online (Sandbox Code Playgroud)
dir .
列出当前目录 ( .
)中的文件。dir
是Get-ChildItem的别名。sort -des
按-des
名称的降序 ( ) 对这些文件进行排序。sort
是Sort-Object的别名,-des
是-Descending
.%
是ForEach-Object的别名,它{}
为管道中的每个项目执行一个脚本(括在花括号 ( ) 中)。if ($_.BaseName % 2 -eq 0 )
用于使用相等( -eq
) 和模数( %
) 运算符检查基名称是否包含偶数。mv
是Move-Item的别名,可用于重命名文件。$_
是管道中的当前项目。(2 + $_.BaseName)
提取基本名称并添加 2。.ToString("000000")
用前导零格式化这个新数字(假设您总共需要六位数字)。+ $_.Extension
添加原始文件扩展名($_.Extension
是管道中当前文件的扩展名,包括.
)此解决方案将重命名名为000998.png
to的文件001000.png
(换句话说,它确保总共有 6 位数字)。
归档时间: |
|
查看次数: |
412 次 |
最近记录: |