我想知道是否有人可以帮助我解决将文件从C:
驱动器移动到网络驱动器的问题。
因此,在工作中,我们有一台输出.txt
文件的机器。例如,这些文件包含有关宠物的数据,因此在该文件夹中,我有数百个文件的名称分别类似于dogs_123456_10062019.txt
然后是cats_123457_10062019.txt
。
现在,第一个数字是参考编号,而不是创建的每个.txt
文件的更改,另一个是日期,因为说我每天可以拥有数百个,参考和日期对于传输来说并不重要因为文件仍然包含所有这些信息
现在,我的网络文件夹结构为Y:dogs
和Y:cats
,并且想要一个自动脚本,该脚本将所有狗和猫文本文件传输到相应的网络驱动器。
网络驱动器名称无法更改,因为监视软件根据文本文件中的信息输出图表。
这可能吗?希望我已经解释了自己
欢呼
答案 0 :(得分:0)
如果文件夹名称与文件名称匹配,则可以执行以下操作:
$SourceFolderPath = "C:\Source\"
$DestinationFolderPath = "Y:"
$FileList = Get-ChildItem -Path $SourceFolderPath
foreach($File in $FileList){
$FolderName = ($File.Name | Select-String -Pattern ".+?(?=_)").Matches.Value
$File | Move-Item -Destination "$DestinationFolderPath\$FolderName"
}
如果文件夹名称与文件名不匹配,则需要手动创建一个字典,该字典应该去哪里,然后将其翻译
上面的代码显然不是企业级的东西:)