如何批量的在图片的文件名前加上文件属性的拍摄日期?

如何批量的在图片的文件名前加上文件属性的拍摄日期?,第1张

不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行

<# :

cls&echo off&cd /d "%~dp0"&mode con lines=5000

rem 在当前目录里多个jpg图片文件名称开头前面添加拍摄日期

set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%_% %z%

set "current=%cd%"

powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"

echo%#% +%$%%$%/%_% %z%

pause

exit

#>

$b=[Convert]::FromBase64String("IC0tPiA=")

$c=[Text.Encoding]::Default.GetString($b)

Add-Type -AssemblyName 'System.drawing'

$current=$env:current

$files=@(dir -literal $current|?{(@(".jpg",".jpeg") -contains $_.Extension) -and ($_ -is [System.IO.FileInfo])})

for($i=0$i -lt $files.length$i++){

    $t=''

    $img=[System.Drawing.Image]::FromFile($files[$i].FullName)

    foreach($it in $img.PropertyItems){

        if($it.Id -eq 0x9003){

            $t=[System.Text.Encoding]::ASCII.GetString($it.Value) -replace '\x00$',''

            break

        }

    }

    $img.Dispose()

    if($t -ne ''){

        $dt=[System.DateTime]::ParseExact($t, 'yyyy:MM:dd HH:mm:ss', [System.Globalization.CultureInfo]::InvariantCulture)

        $newname=$dt.ToString('yyyy年MM月dd日')+' '+$files[$i].Name

        $files[$i].Name+$c+$newname

    }

}

你下载个光影魔术手软件,

菜单--文件--批处理---文字标签--点笔头,选择要加入的日期格式,设定好位置,可以在几秒种内,自动地把你照片的拍摄日记添加上,快速无误。

比PMB软件强百倍,因为软件太麻烦,而且是一张一张编辑的,不好。

顺便说下,现在相机,高相素的,高档次的,是不显示日期的,因为那样影响分辩率和捕捉时间。只有后台电脑处理。

具体使用方法如下:

1、按Win+R打开“运行”命令,在文本框中输入“cmd”命令,然后点击“确定”

2、输入“DIR”后按“enter”键或输入“DIR F:\OS”后按“enter”键,查看F盘分区中OS文件夹中的'未隐藏文件

3、如果电脑是系统的,还有输入“DIR F:\OS /A”后按“enter”键,查看F盘分区中的OS文件夹的所有文件

4、输入“DIR F:\OS /B”后按“enter”,查看F盘分区中OS文件夹中未隐藏文件和文件夹的名称

5、输入“DIR F:\OS /S”后按“enter”,查看F盘分区中OS文件夹中未隐藏的详细文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7898323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存