PowerShell中如何rename带有方括号的文件名?

x86 2008-12-26 05:23:15
不知发在这里是否合适,好歹PowerShell跟C#差不多。
碰到一个很奇怪的问题,在PowerShell里怎么也rename不了一个带有方括号的文件名,因为方括号是正则表达式的字符,而PowerShell用反撇号作为转义符,这样就有一些很奇怪的问题。
比如文件[10]:
PS F:\temp> dir '`[10`]'
Get-ChildItem : 找不到路径“F:\temp\`[10`]”,因为该路径不存在。
所在位置 行:1 字符: 4
+ dir <<<< '`[10`]'


如果用两个反撇号就可以列出来:
PS F:\temp> dir '``[10``]'


目录: Microsoft.PowerShell.Core\FileSystem::F:\temp


Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2008-12-25 11:03 22 [10]


但是rename就不行:
PS F:\temp> Rename-Item 'F:\temp\`[10`]' 'F:\temp\10'
Rename-Item : 指定路径 F:\temp\`[10`] 下的对象不存在。
所在位置 行:1 字符: 12
+ Rename-Item <<<< 'F:\temp\`[10`]' 'F:\temp\10'


无论用多少转义符都不行,哪位能帮我看看?

...全文
602 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
x86 2008-12-29
  • 打赏
  • 举报
回复
晕~~
本以为rename-item和move-item都可以改名,谁知表现会不一样,这个问题网上搜了一下,在PS1.0之前他们发现了这个问题,
然后修改了*-item的命令,除了rename-item,因为他们认为可以用move-item命令来实现。
这个理由似乎也太牵强了。

2楼说的move-item可以,多谢!

GTX280 2008-12-26
  • 打赏
  • 举报
回复
帮顶
kingcsx666 2008-12-26
  • 打赏
  • 举报
回复
这个就不懂啦
gomoku 2008-12-26
  • 打赏
  • 举报
回复
用move-item可以。

move-item 'F:\temp\`[10`]' 'F:\temp\10'
xxyping 2008-12-26
  • 打赏
  • 举报
回复
灌个氺 UP!!!!!
通过这一个课程的介绍,首先我们就能够去了解到,随着管理员不断地深入使用Powershell 完成系统信息的查看和变更配置,就会发现系统当的模块和命令,有时候无法满足我们的日常管理需求,所以这种情况之下的话,管理员就可以自定义编写 Powersell 的脚本和模块和实现这些功能,那么我们将介绍 Powershell 脚本文件的编写,模块和函数的编写以及发布和共享,最终实现一个接近于系统原生的 Powershell 模块文件,满足实现应用的需求。第二节:通过这一节的介绍,首先我们就能够去了解到,Powershell 脚本编程的应用场景和特点,然后我们就可以去查看一下整个课程的基本演示环境;第三节:通过这一节的介绍,首先我们就能够去了解到,Powershell 脚本文件编写和运行,然后我们就可以在演示的环境当,完成 Powershell 脚本文件的编写和运行;第四节:通过这一节的介绍,首先我们就能够去了解到,Powershell 模块文件的特点,然后我们就可以在演示的环境当,完成 Powershell 模块文件的编写和运行;第五节:通过这一节的介绍,首先我们就能够去了解到,Powershell 函数参数的应用场景和特点,然后我们就可以在演示的环境当,完成 Powershell 函数参数的配置;第六节:通过这一节的介绍,首先我们就能够去了解到,Powershell 管道参数的应用场景和特点,然后我们就可以在演示的环境当,完成 Powershell 管道参数的配置;第七节:通过这一节的介绍,首先我们就能够去了解到,Powershell 参数集的应用场景和特点,然后我们就可以在演示的环境当,完成 Powershell 参数集的配置;第八节:通过这一节的介绍,首先我们就能够去了解到,标准的 Powershell 模块和命令帮助信息的特点,然后我们就可以在演示的环境当,完成 Powershell 自定义帮助信息的添加;第九节:通过这一节的介绍,首先我们就能够去了解到,标准的 Powershell 模块和命令当,WhatIf 和 Confirm 参数的特点,然后我们就可以在演示的环境当,完成自定义 WhatIf 和 Confirm 参数的添加;第十节:通过这一节的介绍,首先我们就能够去了解到,Mainfest 文件的应用场景和特点,然后我们就可以在演示的环境当,完成 Mainfest 文件的创建和配置,并且通过 Powershell Gallery 脚本库,发布和共享自定义的脚本文件。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧