复制文件名中带有方括号[]的文件,并使用*通配符

另一个随机用户

我在Windows 7上使用PowerShell,并编写脚本将一堆文件从一个文件夹结构复制到另一个文件夹。有点像编译。PowerShell Copy-Itemcmdlet认为方括号[]是某种通配符,由于某种原因,我无法将其转义。

我无法使用-LiteralPath,因为我要使用星号*通配符,因为文件名中有一个日期作为文件名的一部分,并且日期会更改。该日期用作版本号。

这篇文章很有帮助,但没有多少滴答声(每个方括号2x或4x)逃脱了方括号。

我没有收到错误;PowerShell的行为与输入错误文件名时的行为相同。

这是我正在处理的特定行:

#to Fusion Server
Copy-item -Path $FSG\$SW\0.RoomView.Notes\starter\"[RoomView] Versions explained*.pdf" -Destination $FSG\$containerFolder\$rootFolder\"Fusion Server"\

这就是全部:

# Compiles the Fusion packet for distribution

###############################
###########Variables###########
###############################

#folder structure
$FSG = "F:\FSG"
$containerFolder = "Packet.Fusion for IT and AV Professionals"
$rootFolder      = "Fusion for IT and AV pros $(Get-Date -format “MM-dd-yyyy”)"
$subRoot1        = "Fusion Server"
$subRoot2        = "Scheduling Enhancement and Panels"
$subRoot2sub1    = "Scheduling Panels"
$subRoot3        = "SQL Server"

#source folders
$HW      = "0.Hardware"
$3SMDoc  = "0.Hardware\TPMC-3SM.Documentation"
$4SMDoc  = "0.Hardware\TPMC-4SM.Documentation"
$4SMDDoc = "0.Hardware\TPMC-4SM-FD.Documentation"
$730Doc  = "0.Hardware\TSW-730.Documentation"
$730OLH  = "0.Hardware\TSW-730.OLH"
$CENRVS  = "0.Hardware\CEN-RVS.Notes"

$ProjMgmt = "0.Project Management"

$SW            = "0.Software"
$RVLicensing   = "0.Software\0.RoomView.License"
$RVNotes       = "0.Software\0.RoomView.Notes"
$SQLLicensing  = "0.Software\database.SQL.Licensing"
$SQLNotes      = "0.Software\database.SQL.Notes"
$FRVMarketing  = "0.Software\Fusion RV.Marketing"
$FRVNetworking = "0.Software\Fusion RV.Networking"
$FRVNotes      = "0.Software\Fusion RV.Notes"


###############################
#create the directory structure
###############################

md -Path $FSG\$containerFolder -Name $rootFolder

cd $FSG\$containerFolder\$rootFolder
md "eControl and xPanels"
md "Fusion Server" #$subRoot1
md "Getting Started as a User"
md "Project Management"
md "RoomView Connected Displays"
md "Scheduling Enhancement and Panels" #$subRoot2
md "SQL Server" #$subRoot3

cd $FSG\$containerFolder\$rootFolder\$subRoot1
md "CEN-RVS"
md "Licenseing Information"
md "Networking"
md "Official Documentation"
md "Prerequisites, including powerShell script"
md "Product Info"
md "Requirements"
md "Tech Info"
md "Windows Authentication to Fusion RV"

cd $FSG\$containerFolder\$rootFolder\$subRoot2
md "Outlook Add-in"
md "Scheduling Panels" #$subRoot2sub1

cd $FSG\$containerFolder\$rootFolder\$subRoot2\$subRoot2sub1
md "TPMC-3SM"
md "TPMC-4SM"
md "TPMC-4SM-FD"
md "TSW-730"

cd $FSG\$containerFolder\$rootFolder\$subRoot3
md "Multi-database model only"
md "SQL Licensing"

cd $FSG\$containerFolder
#reset current folder


###############################
#copy the files
###############################

#Copy-Item -Path C:\fso\20110314.log -Destination c:\fsox\mylog.log

#To the root
Copy-item -Path $FSG\$ProjMgmt\starter\"Fusion Support Group Contact info*.pdf" -Destination $FSG\$containerFolder\$rootFolder\
Copy-item -Path $FSG\$containerFolder\"Fusion for IT and AV professionals release notes.txt" -Destination $FSG\$containerFolder\$rootFolder\

#to eControl and xPanels
Copy-item -Path $FSG\$SW\xpanel.Notes\starter\*.* -Destination $FSG\$containerFolder\$rootFolder\"eControl and xPanels"\

#to Fusion Server
Copy-item -Path $FSG\$SW\0.RoomView.Notes\starter\"[RoomView] Versions explained*.pdf" -Destination $FSG\$containerFolder\$rootFolder\"Fusion Server"\

我该怎么做才能逃脱方括号并仍然使用Copy-Itemcmdlet的通配符文件名部分

另一个随机用户

'之间有区别`

  • 第一个是单引号,它是"上的非移位字符
  • 第二个是我以为我正在使用但实际上没有使用的背景标记。这是按键上的固定字符~

这有效:

# to Fusion Server
Copy-item -Path $FSG\$SW\0.RoomView.Notes\starter\'``[RoomView``] Versions explained*.pdf' -Destination $FSG\$containerFolder\$rootFolder\"Fusion Server"\

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

glob无法识别带有方括号的文件名

来自分类Dev

glob无法识别带有方括号的文件名

来自分类Dev

使用Powershell删除文件名中的方括号字符

来自分类Dev

处理文件名中带有通配符的文件

来自分类Dev

处理文件名中带有通配符的文件

来自分类Dev

如何读取文件夹名称中带有方括号的文件路径

来自分类Dev

如何读取文件夹名称中带有方括号的文件路径

来自分类Dev

批量删除文件名中的括号和方括号

来自分类Dev

变量中带有通配符的文件名

来自分类Dev

通过hadoop fs -put将名称中带有方括号的文件上传到Hadoop

来自分类Dev

如何使用带有“长文件名”的通配符*?

来自分类Dev

如何使用 forfiles 和 xocpy 排除带有文件名通配符的文件

来自分类Dev

在 tcl 中复制文件名(带通配符)

来自分类Dev

rm命令:删除文件名包含方括号的文件

来自分类Dev

名称属性中带有方括号的输入

来自分类Dev

从带有方括号的json对象中检索数据

来自分类Dev

如何使用sed删除带有方括号的行?

来自分类Dev

自动复制所有文件,但文件名中带有特定字符的除外

来自分类Dev

是否可以使用带有通配符的重命名命令来更改文件名前缀?

来自分类Dev

对带有空格的文件名使用makefile通配符命令

来自分类Dev

使用WinSCP和PowerShell无法删除名称中带有方括号的目录

来自分类Dev

Linux:在两个日期之间复制文件名中带有日期的文件

来自分类Dev

复制文件名中带有奇怪字符的文件(即[])

来自分类Dev

Python scp复制文件,文件名中带有空格

来自分类Dev

如果文件名包含方括号,则查找失败

来自分类Dev

从目录结构复制文件,路径中带有通配符

来自分类Dev

使用通配符检查文件名搜索模式中的冲突

来自分类Dev

使用零填充文件名中的索引并接受通配符

来自分类Dev

Angular http.get不喜欢开头和结尾处带有方括号的文本文件

Related 相关文章

  1. 1

    glob无法识别带有方括号的文件名

  2. 2

    glob无法识别带有方括号的文件名

  3. 3

    使用Powershell删除文件名中的方括号字符

  4. 4

    处理文件名中带有通配符的文件

  5. 5

    处理文件名中带有通配符的文件

  6. 6

    如何读取文件夹名称中带有方括号的文件路径

  7. 7

    如何读取文件夹名称中带有方括号的文件路径

  8. 8

    批量删除文件名中的括号和方括号

  9. 9

    变量中带有通配符的文件名

  10. 10

    通过hadoop fs -put将名称中带有方括号的文件上传到Hadoop

  11. 11

    如何使用带有“长文件名”的通配符*?

  12. 12

    如何使用 forfiles 和 xocpy 排除带有文件名通配符的文件

  13. 13

    在 tcl 中复制文件名(带通配符)

  14. 14

    rm命令:删除文件名包含方括号的文件

  15. 15

    名称属性中带有方括号的输入

  16. 16

    从带有方括号的json对象中检索数据

  17. 17

    如何使用sed删除带有方括号的行?

  18. 18

    自动复制所有文件,但文件名中带有特定字符的除外

  19. 19

    是否可以使用带有通配符的重命名命令来更改文件名前缀?

  20. 20

    对带有空格的文件名使用makefile通配符命令

  21. 21

    使用WinSCP和PowerShell无法删除名称中带有方括号的目录

  22. 22

    Linux:在两个日期之间复制文件名中带有日期的文件

  23. 23

    复制文件名中带有奇怪字符的文件(即[])

  24. 24

    Python scp复制文件,文件名中带有空格

  25. 25

    如果文件名包含方括号,则查找失败

  26. 26

    从目录结构复制文件,路径中带有通配符

  27. 27

    使用通配符检查文件名搜索模式中的冲突

  28. 28

    使用零填充文件名中的索引并接受通配符

  29. 29

    Angular http.get不喜欢开头和结尾处带有方括号的文本文件

热门标签

归档