我正在设置一个目录过程,以便操作员进行文件签名。这些文件一旦签名就需要进行处理,以便下一位操作员知道上一个过程已完成。
步骤1.在X:\'operator name'\'Customer Name'中创建初始文件
第2步。操作员对文件进行了签名,并将签名的版本放在x:\'Operator name'\'Customer Name'\ Signed
第3步。管理员将从其桌面启动批处理文件或脚本,该文件或脚本会将在任何X:\'Operator Name'\'Customer Name'\ Signed文件夹中创建的所有文件移动到相应的X:\'Customer Name中'文件夹。
将维护一个运算符列表-可能在批处理文件中。这已经存在于中央excel文件中。
所有文件均为.pdf 每个操作员在X:\上都有自己的文件夹 每个操作员都有无限数量的潜在客户文件夹。
所有操作员和客户文件夹都是在vb中自动创建的,因此命名将是相同的。
任何帮助表示赞赏!
谢谢
# Defines a list of operators. Must be identical to those in the main PDF operators table
$operatorlist = (
"Operator One",
"Operator Two",
"Operator three",
"Operator Four",
"Operator Five",
"Operator Six"
)
# Defining the variables
$nametoFind = "\Signed"
foreach ( $FTM in $operatorlist )
{
$sourceFolder = ( JOIN-PATH "X:\" $operatorlist )
#define the file to move
$FTM = Get-ChildItem $sourceFolder -Recurse | Where-Object {$_.PSIsContainer -and $_.Name.Endswith($nametoFind)}
$customerpath = Split-Path - Path $FTM -Parent -Resolve | Split-Path -Leaf
}
答案 0 :(得分:0)
此回复时间过长,无法发表评论。所以,放在这里:
为什么不只使用Windows FSRM(文件系统资源管理器)服务来执行此操作还是编写脚本。这是一项旨在查看数据文件并执行定义的操作的专用服务。您可以查看文件的内容,然后决定如何处理它们。您会发现许多与Windows FCI(文件分类基础结构)有关的信息。但是,没有什么可以阻止您将FSRM用于此一般目的。查看此信息:
如果要为此使用PowerShell,则将使用Async FileSystemWatcher实现。 MS PowerShellGallery.com上有一些预先构建的脚本,可以帮助您入门。按原样下载和使用,或根据用例的需要进行重构。
示例:
此脚本使用.net FileSystemWatcher类来订阅NTFS文件系统中文件或文件夹上的“创建”,“更改”和“删除”事件。它可用于监视一个或多个文件夹,并可进行修改以在触发这些事件时执行任何操作。
Download : FileSystemWatcher.ps1
Monitor folder for file system events
。简介
使用非持久性异步事件监视文件夹中的更改。说明
IO.FileSystemWatcher和Register-ObjectEvent的包装器,用于监视文件夹中的文件系统事件(已创建,已删除,已更改和/或重命名)