手机
当前位置:查字典教程网 >脚本专栏 >PowerShell >PowerShell Out-File禁止覆盖文件的方法
PowerShell Out-File禁止覆盖文件的方法
摘要:本文介绍使用PowerShell来写文件时,如何阻止系统自动覆盖已有的文件。我们在使用脚本进行文件处理的时候,我们可能不希望使用Ou-Fil...

本文介绍使用PowerShell来写文件时,如何阻止系统自动覆盖已有的文件。

我们在使用脚本进行文件处理的时候,我们可能不希望使用Ou-File生成的文件覆盖已有的文件。那么怎么实现呢?在Out-File这个CmdLet中,有没有什么参数可以阻止Out-File不声不响的覆盖了已有的文件呢?

答案是-NoClobber参数。

NoClobber参数

在Out-File输出到文件时,如果使用了-NoClobber参数,则系统遇到已有文件时,将无法执行成功。下面的例子展示了当d:1.txt已经存在时,使用Out-File输出内容到该文件时,系统将会报错。

复制代码 代码如下:

PS C:Usersspaybow> "" | Out-File d:1.txt

PS C:Usersspaybow> "" | Out-File d:1.txt -NoClobber

Out-File : 文件“D:1.txt”已经存在。

所在位置 行:1 字符: 14

+ "" | Out-File <<<< d:1.txt -NoClobber

+ CategoryInfo : ResourceExists: (D:1.txt:String) [Out-File], IO

Exception

+ FullyQualifiedErrorId : NoClobber,Microsoft.PowerShell.Commands.OutFileC

ommand

另外需要说明的是:我们知道-Append参数用于指定将字符串附加到文件。如果同时指定了-Append 和 -NoClobber参数,会不会有冲突呢?答案是,系统会将字符串附加到文件。演示如下:

PS C:Usersspaybow> "hello" | Out-File d:1.txt

PS C:Usersspaybow> "powershell" | Out-File d:1.txt -NoClobber -Append

PS C:Usersspaybow> type d:1.txt

hello

powershell

关于PowerShell使用Out-File写文件时禁止覆盖已有文件,本文就介绍这么多,希望对您有所帮助,谢谢!

【PowerShell Out-File禁止覆盖文件的方法】相关文章:

PowerShell使用Clear-Content命令删除、清空文件内容的例子

Powershell小技巧之从文件获取系统日志

PowerShell中使用正则表达式跨行匹配字符串的方法

PowerShell远程安装MSI安装包、EXE可执行程序的方法

PowerShell中执行Javascript的方法示例

PowerShell多线程执行前后台作业的例子

PowerShell中按修改时间查找文件的方法

Powershell小技巧之使用WMI查询插上的U盘

Powershell获取环境变量的方法

Powershell创建数组正确、更快的方法

精品推荐
分类导航