将随机数批量添加到文件名的最佳方法?

Posted

技术标签:

【中文标题】将随机数批量添加到文件名的最佳方法?【英文标题】:Best way to bulk prepend a random number to filenames? 【发布时间】:2021-01-06 09:38:12 【问题描述】:

或者,有没有办法在文件资源管理器中随机排序文件?

理想情况下,我想在不安装 python 环境的情况下执行此操作。也许有一个干净整洁的批处理文件,或者到目前为止我已经搜索了互联网无济于事,尽管我找到了几种随机化每个文件名称的方法......

我确实找到了这个:Bash script to prepend a random number to all files 这是我想做的,但不完全是。我需要保留原始文件名。我只想要一个简单的数字前缀。即 7、560、380 或其他数字,然后是空格和/或连字符。不是一长串字符。该脚本也适用于 bash..

如果您需要进一步澄清我的问题,请告诉我。

【问题讨论】:

【参考方案1】:

像这样在 PowerShell 中:

Get-ChildItem "C:\Your\Path" -File | Rename-Item -NewName  "$(Get-Random -Max 1000)" + $_.Name 

【讨论】:

这太棒了,回答了我的问题!我在使前缀不那么长并且介于 x 和 y 之间时遇到了一点问题,但我相信我会弄明白的! PowerShell 复制 Get-Random [-SetSeed ] [[-Maximum] ] [-Minimum ] [-Count ] [] 是的,我在写完之后就找到了文档.. 好的,这是一个相关的奇怪问题。我知道在脚本中放置一个分隔符(在文件名和随机生成的前缀之间).. 即 'Get-ChildItem "C:\Your\Path" -File | Rename-Item -NewName "$(Get-Random -Max 99999)" + " - " + $_.Name ' 但是我太兴奋了,只是使用了示例脚本......现在我有一堆文件前面的数字,如果有帮助,所有文件都以 alpha char 开头。现在有什么办法可以放置分隔符吗? 正则表达式救援C:\Your\Path" -File | Rename-Item -NewName $_.Name -Replace '^(\d+)', '$1 - '

以上是关于将随机数批量添加到文件名的最佳方法?的主要内容,如果未能解决你的问题,请参考以下文章

使用shell批量添加用户

如何批量在多个文件前面添加名称或者数字?

Shell脚本:批量添加用户,并设置随机字符为密码

linux批量添加10个用户并将其随机密码和用户名写入文件

如何将 CSV 文件批量加载到 Snowflake 中,并将文件名添加为列?

(转)通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加