个性化阅读
专注于IT技术分析

PowerShell Set-Content设置内容| PowerShell写入文件

本文概述

PowerShell Set-Content cmdlet将新内容写入文件或替换文件中的现有内容。它不同于Add-content cmdlet, 后者将内容附加到文件。要将内容发送到Set-Content cmdlet, 可以在命令行上使用-Value参数, 也可以通过管道发送内容。 sc是此cmdlet的别名。

句法

Set-Content 
[-Path] <string[]>
[-Force] 
[-Credential <pscredential>] 
[-WhatIf] 
[-Confirm]
[-Value] <Object[]> 
[-PassThru] 
[-Filter <string>] 
[-Include <string[]>] 
[-Exclude <string[]>] 
[-UseTransaction] 
[-NoNewline] 
[-Encoding {Unknown | String | Unicode | Byte | BigEndianUnicode | UTF8 | UTF7 | UTF32 | Ascii | Default | Oem | BigEndianUTF32}] 
[-Stream <string>]  
[<CommonParameters>]
Set-Content 
[-Value] <Object[]>
-LiteralPath <string[]> 
[-PassThru] 
[-Filter <string>] 
[-Include <string[]>]
[-Exclude <string[]>] 
[-Force] 
[-Credential <pscredential>] 
[-WhatIf] 
[-Confirm] 
[-UseTransaction] 
[-NoNewline] 
[-Encoding {Unknown | String | Unicode | Byte | BigEndianUnicode | UTF8 | UTF7 | UTF32 | Ascii | Default | Oem |BigEndianUTF32}]
[-Stream <string>]  
[<CommonParameters>]

参数

-路径

-Path参数用于指定接收内容的项目的路径。接受通配符。

文学路径

-LiteralPath参数用于指定一个或多个位置的路径。如果路径包含转义符, 则将其用单引号引起来。单引号告诉Windows PowerShell, 它不应将任何字符解释为转义序列。 cmdlet中没有任何字符, 这被解释为通配符。

-力

-Force参数用于强制cmdlet设置只读文件的内容。它不会覆盖安全权限。

-如果

-WhatIf参数用于显示如果执行cmdlet将发生的情况。该cmdlet不执行。

-确认

-confirm参数用于在运行cmdlet之前提示确认。

-值

-Value参数用于指定项目的新内容。

直通

-PassThru参数用于返回表示内容的对象。默认情况下, 它不生成任何输出。

-过滤

-Filter参数用于指定过滤器以限定-Path参数。 FileSystem提供程序是唯一支持使用过滤器的PowerShell提供程序。此参数效率更高, 因为提供程序在cmdlet获取对象时应用筛选器, 而不是让Powershell在访问对象后筛选对象。

-包括

此cmdlet包括在操作中的项目被指定为字符串数组。 -Include参数的值限定-Path参数。输入模式或路径元素, 例如* .txt。接受通配符。仅当cmdlet包含项的内容(例如C:\ *, 通配符’*’用于指定C:目录的内容)时, -Exclude参数才有效。

-排除

此cmdlet在操作中排除的项目指定为字符串数组。 -Exclude参数的值限定-Path参数。输入模式或路径元素, 例如* .txt。接受通配符。仅当cmdlet包含项的内容(例如C:\ *, 通配符’*’用于指定C:目录的内容)时, -Exclude参数才有效。

-NoNewLine

在输入字符串之间没有插入任何换行符或空格, 并且在最后一个输出字符串之后未添加任何换行符。

-编码

-Encoding参数用于指定目标文件的编码类型。其默认值为UTF8NoBOM。它是一个动态参数, 由FileSystem提供程序添加到Set-Content cmdlet。它仅在文件系统的驱动器中起作用。

以下是此参数可接受的值:

  • ASCII:它使用ASCII(7位)字符集的编码。
  • Unicode:使用小尾数字节顺序以UTF-16格式编码。
  • UTF7:以UTF-7格式编码。
  • UTF8:它以UTF-8格式编码。
  • BigEndianUnicode:使用big-endian字节顺序以UTF-16格式编码。
  • OEM:它为MS-DOS和控制台程序使用默认编码。
  • UTF8NoBOM:它以UTF-8格式编码, 没有字节顺序标记(BOM)
  • UTF32:以UTF-32格式编码。
  • UTF8BOM:它以字节序标记(BOM)以UTF-8格式编码

-流

-Stream参数用于为内容指定备用数据流。如果流不存在, 则此cmdlet会创建它。不接受通配符。

Windows PowerShell 3.0中引入了此参数。

它是一个动态参数, 由FileSystem提供程序添加到Set-Content cmdlet。它仅在文件系统的驱动器中起作用。

例子

示例1:创建一个新文件并写入内容

PowerShell Set-Content设置内容

此示例中的第一个cmdlet创建一个新文件, 并将Windows操作系统写入该文件。它使用-Path和-Value参数在当前目录中创建一个名为pw.txt的新文件。

在此示例中, 第二个cmdlet使用Get-content cmdlet在PowerShell控制台中显示pw.txt文件的内容。

示例2:替换目录中现有文件的内容。

PowerShell Set-Content设置内容

在此示例中, 该cmdlet替换当前目录中文件的内容。此cmdlet使用-Value参数, 该参数提供文本字符串Hello PowerShell .. !!替换文件中的现有内容。

示例3:创建一个新文件并将系统日期和时间写入该文件

PowerShell Set-Content设置内容

本示例中的第一个cmdlet创建一个新文件, 并将系统的当前日期和时间写入当前目录中的文件。

Set-content cmdlet使用-Path和-Value参数在当前目录中创建一个名为dt.txt的新文件。 -value参数使用Get-date cmdlet获取当前日期和时间。

在此示例中, 第二个cmdlet使用Get-Content cmdlet在PowerShell控制台中显示dt.txt文件的内容。


赞(0)
未经允许不得转载:srcmini » PowerShell Set-Content设置内容| PowerShell写入文件

评论 抢沙发

评论前必须登录!