使用Powershell从日常文件夹中复制文件

时间:2018-12-18 11:21:24

标签: powershell if-statement file-copying

我希望每天将每天创建的文件移动到另一个文件夹。这些文件每天都会保存到相关的YYYY \ MM \ folder。现在,我已经创建了一种使用年/月日期功能移动这些文件的方法,但是由于月份中附加了一个数字,即12月看起来像“ 12. 12月”,因此变得有些棘手。

我试图用If语句对此进行修改,该语句将“ a”分配给与月份相对应的相关数字,但是它不起作用。

Yyear

任何想法如何解决此问题/我在哪里出错。这是我第一次使用Powershell编写。

编辑:我在复制到的文件位置中遇到错误,但在相应的核心月份中没有发现差异。例如,if语句指出,如果月份为= 12月,则a = 12,但当前为1。如果是1月,情况应该如此

3 个答案:

答案 0 :(得分:0)

如果您使用      $month = Get-Date -Format "MM" 这将使您获得一个月的数字。如果我了解您要达到的目标,则应该与您的源路径匹配。

答案 1 :(得分:0)

$Date = get-date
$Path = "F:\BB\" + "$($Date.year)" + "\" + "$($Date.month)" + "\"
Copy-Item -Path $Path -Destination F:\BB

答案 2 :(得分:0)

月份的不同形式也可以在格式字符串中重复,其中

M    = month number without leading zeroes
MM   = month number with    leading zeroes
MMM  = abbreviated month name 
MMMM = full month name

所以:

$Month = Get-Date -f "M. MMMM"

> $Month
12. December

由于格式字符串可以包含任何字母,因此您可以一步构建源路径:
(如果干扰格式字母,则以反斜杠转义)

$Source = "F:\BB\{0:yyyy\\M. MMMM}\Scan.pdf" -f (Get-Date)

> $Source
F:\BB\2018\12. Dezember\Scan.pdf

但是我想念这里的日子吗?