快捷方式指向夹名为当前日期。 YYYY_MM_DD格式(Shortcut that points

2019-10-18 03:25发布

所以我每天的项目的一部分。 每一天,我们创造我们存储所有的文件,这一天一个新的文件夹。 它是根据当前日期命名的,带有一个计数器加表示“插曲”的前部。 格式为WXYZ_YYYY_MM_DD。

EX:

0001_2013-05-09

0002_2013-05-10

0003_2013-05-13

0004_2013-05-14

该文件夹已经被创建,但我需要建立一个快捷方式,将永远带你到当天的“当前”文件夹中。

工作了我的选项之后,它似乎像PowerShell的将是最直接的。 我知道我需要在这里使用调度,但我删除现有的快捷方式创建一个新的,或编辑现有的快捷方式路径值之间徘徊。 不完全知道如何来增加我的小插曲,并追加到日期值。 我想在这里附加条件?

我更精通C ++和Java比炮弹。 有没有一段时间,所以这里的任何帮助表示赞赏在长与他们合作。

Answer 1:

您可以使用以下PowerShell中的快捷方式。

$sh = New-Object -ComObject WScript.Shell
$shortCut = $sh.CreateShortcut("C:\latest_folder.lnk")
$shortCut.TargetPath = "C:\foo\bar.txt"
$shortCut.Save()

你甚至不需要每次删除旧的。 如果你只是执行相同的代码就会覆盖旧的快捷方式。

为了抓住最新的文件夹,你可以使用下面的行。

$file = Get-ChildItem -Path "c:\Foo" | Sort-Object -Descending LastWriteTime | select -First 1

那么$ file.FullName会给你的完整路径的文件夹/文件。



Answer 2:

尝试了这一点

它将创建快捷方式到新目录

$File = Get-ChildItem -Path "C:\Foo" | ?{ $_.PSIsContainer } | Sort-Object -Descending Name | select -First 1

[int]$Counter = ($File -Split("_"))[0]
$Counter += 1
$NewFolder = ("{0:000#}" -f $Counter) + "_" + (Get-Date -Format "yyyy-MM-dd")


$Shell = New-Object -ComObject WScript.Shell
$Shortcut = $Shell.CreateShortcut("C:\foo\latest_folder.lnk")
$Shortcut.TargetPath = "C:\Foo\" + $Newfolder
$Shortcut.Save()


文章来源: Shortcut that points to folder named the current date. YYYY_MM_DD Format