Ade*_*SIF 3 powershell scripting powershell-2.0 powershell-3.0
我想更改使用此脚本生成的文件的创建日期:
$clientname = Read-Host "Enter the client name"
$path = Read-Host "Enter the complete path of .bak files"
$time = "01-00-00"
$space = " "
for ($i = 0; $i -lt 7;$i++)
{
$date = (Get-Date).AddDays(-1-$i).ToString('yyyy-MM-dd')
New-Item -ItemType file $path$clientname$space$date$space$time.bak
}
Run Code Online (Sandbox Code Playgroud)
所以它给了我这些文件:
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 16/08/2013 16:55 0 client 2013-08-15 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-14 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-13 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-12 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-11 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-10 01-00-00.bak
-a--- 16/08/2013 16:55 0 client 2013-08-09 01-00-00.bak
Run Code Online (Sandbox Code Playgroud)
我想修改每个文件的LastWriteTime属性,我希望它与文件名中的日期相同.
"client 2013-08-15 01-00-00.bak"LastWriteTime将为此文件的示例"15/08/2013 01:00"
我被困了,我不知道怎么做
谢谢
未经测试,但在调用New-Item后在循环中尝试此操作:
$file = Get-ChildItem $path$clientname$space$date$space$time.bak
$file.LastWriteTime = (Get-Date).AddDays(-1-$i)
Run Code Online (Sandbox Code Playgroud)
如果要查看可以使用FileInfo对象执行的完整列表,请尝试$file | gm在powershell控制台中调用.您还可以在MSDN上查看文档.
| 归档时间: |
|
| 查看次数: |
12738 次 |
| 最近记录: |