PowerShell Out-File禁止覆蓋文件的方法
本文介紹使用PowerShell來(lái)寫(xiě)文件時(shí),如何阻止系統(tǒng)自動(dòng)覆蓋已有的文件。
我們?cè)谑褂媚_本進(jìn)行文件處理的時(shí)候,我們可能不希望使用Ou-File生成的文件覆蓋已有的文件。那么怎么實(shí)現(xiàn)呢?在Out-File這個(gè)CmdLet中,有沒(méi)有什么參數(shù)可以阻止Out-File不聲不響的覆蓋了已有的文件呢?
答案是-NoClobber參數(shù)。
NoClobber參數(shù)
在Out-File輸出到文件時(shí),如果使用了-NoClobber參數(shù),則系統(tǒng)遇到已有文件時(shí),將無(wú)法執(zhí)行成功。下面的例子展示了當(dāng)d:\1.txt已經(jīng)存在時(shí),使用Out-File輸出內(nèi)容到該文件時(shí),系統(tǒng)將會(huì)報(bào)錯(cuò)。
PS C:\Users\spaybow> "" | Out-File d:\1.txt
PS C:\Users\spaybow> "" | Out-File d:\1.txt -NoClobber
Out-File : 文件“D:\1.txt”已經(jīng)存在。
所在位置 行: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
另外需要說(shuō)明的是:我們知道-Append參數(shù)用于指定將字符串附加到文件。如果同時(shí)指定了-Append 和 -NoClobber參數(shù),會(huì)不會(huì)有沖突呢?答案是,系統(tǒng)會(huì)將字符串附加到文件。演示如下:
PS C:\Users\spaybow> "hello" | Out-File d:\1.txt
PS C:\Users\spaybow> "powershell" | Out-File d:\1.txt -NoClobber -Append
PS C:\Users\spaybow> type d:\1.txt
hello
powershell
關(guān)于PowerShell使用Out-File寫(xiě)文件時(shí)禁止覆蓋已有文件,本文就介紹這么多,希望對(duì)您有所幫助,謝謝!
相關(guān)文章
PowerShell中調(diào)用外部程序和進(jìn)程操作命令例子
這篇文章主要介紹了PowerShell中調(diào)用外部程序和進(jìn)程操作命令例子,給出了進(jìn)程操作的一些命令和調(diào)用外部應(yīng)用程序的方法,需要的朋友可以參考下2014-08-08PowerShell數(shù)組結(jié)合switch語(yǔ)句產(chǎn)生的奇特效果介紹
這篇文章主要介紹了PowerShell數(shù)組結(jié)合switch語(yǔ)句產(chǎn)生的奇特效果介紹,產(chǎn)生了類似枚舉的效果,需要的朋友可以參考下2014-08-08Windows Powershell方法(對(duì)象能做什么)
方法定義了一個(gè)對(duì)象可以做什么事情。當(dāng)你把一個(gè)對(duì)象輸出在控制臺(tái)時(shí),它的屬性可能會(huì)被轉(zhuǎn)換成可視的文本。但是它的方法卻不可見(jiàn)。2014-09-09PowerShell檢查網(wǎng)卡狀態(tài)和對(duì)應(yīng)的電源設(shè)置
這篇文章主要介紹了PowerShell檢查網(wǎng)卡狀態(tài)和對(duì)應(yīng)的電源設(shè)置,本文直接給出了實(shí)現(xiàn)方法和使用命令及輸出結(jié)果,需要的朋友可以參考下2015-03-03PowerShell中使用PrintManagement管理打印機(jī)示例
這篇文章主要介紹了PowerShell中使用PrintManagement管理打印機(jī)示例,本文給出了一個(gè)安裝打印機(jī)驅(qū)動(dòng)和打印機(jī)端口的例子,需要的朋友可以參考下2015-03-03Windows Powershell 進(jìn)行數(shù)學(xué)運(yùn)算
在Windows PowerShell中, 使用數(shù)學(xué)運(yùn)算符來(lái)進(jìn)行數(shù)學(xué)運(yùn)算,數(shù)學(xué)運(yùn)算符允許你在命令參數(shù)中計(jì)算數(shù)值. 你可以使用一個(gè)或者多個(gè)運(yùn)算符進(jìn)行加減乘除法, 也可以返回除法的余數(shù)(模). 包含這些計(jì)算的參數(shù), 將計(jì)算結(jié)果作為參數(shù)值. 命令就像處理其他類型參數(shù)一樣, 來(lái)處理參數(shù)值.2014-08-08PowerShell實(shí)現(xiàn)動(dòng)態(tài)獲取當(dāng)前腳本運(yùn)行時(shí)消耗的內(nèi)存
這篇文章主要介紹了PowerShell實(shí)現(xiàn)動(dòng)態(tài)獲取當(dāng)前腳本運(yùn)行時(shí)消耗的內(nèi)存,本文直接給出實(shí)現(xiàn)腳本函數(shù),需要的朋友可以參考下2015-06-06windows Powershell 快速編輯模式和標(biāo)準(zhǔn)模式
powershell控制臺(tái)有兩種模式,一個(gè)是快速編輯模式,一個(gè)是標(biāo)準(zhǔn)模式。2014-08-08