powershell - 如何正确使用 Remove-Item 中的 -Exclude 来获取 Powershell 中变量的字符串列表?
问题描述
我有一个变量以这种格式存储要删除的文件列表:
$list = """" + "file1.txt" + """"
一个完整的$list
看起来像这样:
$list
"file1.txt","file2.txt","file3.txt",...
并尝试使用Remove-Item
该变量失败,它删除了所有文件:
Remove-Item -Recurse -Path "c:\myfiles\*" -Exclude $list
如何正确实现这一目标?提前致谢!
解决方案
你很接近但$list
需要是一个数组而不是一个字符串(带有多余的引号)。
只需引用每个元素,并用逗号分隔它们即可:
$list = "file1.txt","file2.txt"
Remove-Item -Path "c:\myfiles\*" -Recurse -Exclude $list -WhatIf
我还建议阅读about_quoting_rules,因为您似乎不知道双引号和单引号做不同的事情。
改用单引号:
$list = """" + "file1.txt" + """"
可以表示为:
$list = '"file1.txt"'
(上面的代码不需要这些额外的引号)
推荐阅读
- python - 如何让 discord.py bot 发送到它被调用的服务器?
- c# - 为什么我的代码中 REST API 的响应不是 JSON 格式,而是带有 Google 扩展“restman”的正确格式?
- vue-component - 从dopdown vue中选择选项时的调用方法
- google-cloud-platform - 在 GCP 堆栈驱动程序中重新触发警报
- reactjs - 组件卸载时如何取消 SvgUri 请求
- html - 如何使用字体制作(“ *”)并通过react js使用输入框?
- reactjs - ESLint 和 TSLint 的区别
- python - 如何使用 Selenium 和 Python 获取跨度内的标签内的文本?
- json - 如何在 DjangoCassandraModel Map 字段中设置 key_type 和 value_type?
- python - 在 Jupyter 笔记本上使用 pyspark.sql.function 时出错