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.pngto的文件001000.png(换句话说,它确保总共有 6 位数字)。
| 归档时间: |
|
| 查看次数: |
412 次 |
| 最近记录: |