每天我都会在 Windows 10 目录中创建一个新的子文件夹。
我需要手动打开文件夹,并手动找到最新的文件夹来存储文件。已经有数百个子文件夹了。
我需要使用程序中的文件夹对话框,该程序要求我找到用于存储文件的文件夹,因此我无法配置文件夹对话框以按日期排序,但我可以使用文件夹快捷方式。
是否可以在 Windows 10 中创建目录最新子文件夹的快捷方式?
答案1
您可以编写一个 Powershell 脚本来执行此操作。使用获取子项找到最近的文件夹然后脚本创建新的快捷方式。
例如 :
# Default locations
$FolderRoot="D:\Temp\"
$Shortcut="D:\Temp\Latest.lnk"
# Get latest folder in root folder
$Latest = Get-ChildItem $FolderRoot -dir | sort CreationTime | Select -last 1
# Delete old shortcut
if (Test-Path $Shortcut){Remove-Item $Shortcut}
# Create new shortcut
$WshShell=New-Object -ComObject WScript.Shell
$NewShortcut=$WshShell.CreateShortcut($Shortcut)
$NewShortcut.TargetPath = $Latest[0].FullName
$NewShortcut.Save()
如果将其保存为.ps1
文件,那么您可以每天运行它,它将更新快捷方式Latest.lnk
以指向最新的文件夹。
答案2
资源管理器和 Windows 的文件打开对话框支持按以下方式对文件夹进行排序创建时间,不需要脚本。虽然它只会按修改日期默认情况下,您可以选择排序依据 > 更多并选择适当的项目。设置后,资源管理器将记住排序选项,然后每次打开时,最新的选项将始终位于顶部,无需脚本
您还可以使用 cmd 创建指向最新文件夹的符号链接,而不是快捷方式
rd newestDir
for /f "tokens=*" %%a in ('dir /b /a:d /t:c /od') do set newest=%%a
mklink /J path\to\newestDir "%newest%"
或 powershell
$newest = Get-ChildItem "path\to\root" -Directory | Sort-Object CreationTime | Select-Object -Last 1
New-Item -Path path\to\newestDir -ItemType SymbolicLink -Value "$newest" -Force
上述命令将创建一个名为 path\to\newestDir 的符号链接,指向最新文件夹
如果你从 shell 打开文件夹,则可以直接从命令行打开它,而不必创建快捷方式并每天更新它
使用 powershell 只需要一行
start $(Get-ChildItem "path\to\root" -Directory | Sort-Object CreationTime | Select-Object -Last 1)
您可以将最后一部分更改为Sort-Object CreationTime -Descending | Select-Object -First 1
,或将其缩短为
start $(ls "path\to\root" -dir | sort CreationTime | select -last 1)
在cmd中你可以使用它
for /f "tokens=*" %%a in ('dir /b /a:d /t:c /od') do set newest=%%a
start %newest%
或者这也有效
for /f "tokens=*" %%a in ('dir /b /a:d /t:c /o:-d') do (start "" "%%a" & exit /B)
exit /B
也可以改为goto :eof