【问题标题】:move contents not fully completed移动内容未完全完成
【发布时间】:2022-11-04 17:23:40
【问题描述】:
  • 我直接在 c:\ 上有一个名为“aa”的源文件夹

  • 它包含 3 个子文件夹 A1、A2、A3,每个人都有一个文件 t1、t2、t3(分别)

  • 我有一个名为“mylist.txt”的文件,其中包含我要移动的文件夹列表(在我的情况下为 A1 和 A3)

  • 我想将 mylist 中列出的每个文件夹从源移动到目标,包括它们的内容

当我尝试下面的代码时:

  • “A3”文件夹与其“T3”文件一起正确移动,
  • “A2”文件夹保留在源文件夹中,因为在 mylist 文件中未询问
  • 但是“A1”文件夹消失了,“T1”文件被直接移动到了“dest”文件夹...
#
$Sce = "C:\aa" 
$Dest = "c:\zz"
$files = "c:\mylist.txt"

Clear-Host
foreach($line in [System.IO.File]::ReadLines($files))
{
       $fullline = $sce + "\" + $line
       Move-Item -Path $fullline -Destination $Dest
}
#

有人能帮我吗?

【问题讨论】:

    标签: list powershell move


    【解决方案1】:

    我会自动回复以帮助任何人 事实上,我们必须在移动内容或创建它之前检查“dest”是否存在 在这种情况下,所有子文件夹和内容都正确移动 希望这可以帮助 祝你今天过得愉快

    # PARAM
    $Sce = "C:a" 
    $Dest = "c:zz"
    $list = "c:mylist.txt"
    $line = ""
    $fullSce = ""
    
    Clear-Host
    
    # --- DO NOT MODIFY BELOW THIS LINE ---
    
    # verifie que le repertoire dest existe, le cree sinon
     If(!(test-path -PathType container $Dest)) 
        {
             New-Item $Dest -ItemType Directory
        }        
    
    # deplace tous les sous-repertoires et contenus de la source vers la dest, 
    # selon les criteres du fichier $list
    foreach($line in [System.IO.File]::ReadLines($list))
        {
        $fullSce = $sce + "" + $line   
        Move-Item -Path $fullSce -Destination $Dest 
        }
    

    【讨论】:

      猜你喜欢
      • 2012-12-11
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 2018-08-04
      • 2018-08-25
      • 2016-01-23
      • 1970-01-01
      • 2020-08-06
      相关资源
      最近更新 更多