YWQ8 发表于 2024-4-6 17:28

PowerShell批量重命名[小白入门]

刚刚开始接触PowerShell,最实用又容易实现的就是批量重命名了吧。
下面的代码,读取一个文本文档中的信息,批量替换相应文件的名称。
信息文档中每行两个值,用逗号隔开。
稍加修改可以更换为多个键值,会更好,但是我刚接触,这个脚本也恰好能满足我的需求了,就先不研究啦。

Read-Host "请输入需重命名的文件路径"|Set-Location
$src=@{}
$srcname=@()
$w=Read-Host "请输入信息文件路径及文件名:"
Get-Content -Path $w -Encoding UTF8|ForEach-Object {
    $key,$val=$_ -split ","
    $src[$key]=$val
    $srcname+=$key
}
Get-ChildItem -path ".\*.pdf" | ForEach-Object {
    foreach($t in $srcname){
      if($_.Name.Contains($t)){
            @{
                Path=$_.Name
                newname=$src[$t]+$t+".pdf"
            }|Rename-Item
            Write-Host $t
            break
      }
    }
}

YWQ8 发表于 2024-4-22 16:36

LiiJuu 发表于 2024-4-7 09:57
楼主大佬在,整一个自动化设置IP的吧。哈哈哈哈,公司好多人不知道咋设置IP,实属头疼。

这个我倒还没试过,“大佬”不敢当,只是刚开始学习,我大概搜了一下,大概是先用命令获取网络适配器,然后设置,可以搜索一下或者问一下ai,我实在是没试过,帮不上了,抱歉{:1_936:}

5Axi 发表于 2024-4-6 21:56

终于可以不再为文件批量 改名而发愁了啊 太赞了

cxsljw 发表于 2024-4-7 01:06

cmd 一条for命令就能完成的事,结果整出这么多代码。浪费了

yoga2joker 发表于 2024-4-7 09:27

刚接触powershell+1,谢谢分享

laustar 发表于 2024-4-7 09:35

不错。试一下。

LiiJuu 发表于 2024-4-7 09:57

{:1_918:}楼主大佬在,整一个自动化设置IP的吧。哈哈哈哈,公司好多人不知道咋设置IP,实属头疼。

turmasi1234 发表于 2024-4-7 11:31

看看能不能用,赞一个

vickiyan 发表于 2024-4-7 11:50

简单实用,还是不错的。

xajjunjun 发表于 2024-4-7 14:51


强啊,这个不错

Kbai 发表于 2024-4-7 16:43

感谢分享,学习学习
页: [1] 2
查看完整版本: PowerShell批量重命名[小白入门]