Add-Content

モジュール:マイクロソフト。——-管理

は、ファイルに単語を追加するなど、指定された項目にコンテンツを追加します。

構文

Add-Content <string> <Object> >] >] 
Add-Content <Object> -LiteralPath <string> >] >] 

説明

Add-Contentコマンドレットは、指定された項目またはファイルにコンテン コンテンツを指定するには、コマンドでコンテンツを入力するか、コンテンツを含むオブジェクトを指定します。次の例でファイルまたはディレクトリを作成する必要がある場合は、New-Itemを参照してください。

例1:例外を除いてすべてのテキストファイルに文字列を追加する

この例では、現在のディレクトリ内のテキストファイルに値を追加しますが、そのファイル名に基づいてファイルを除外します。P>

Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'

Pathパラメーターは、現在のディレクトリ内のすべての.txtファイルを指定しますが、Excludeparameterは指定されたパターンに一致するファイ Valueパラメーターは、ファイルに書き込まれるテキスト文字列を指定します。

例2: 指定されたファイルの末尾に日付を追加する

この例では、現在のディレクトリ内のファイルに日付を追加し、powershellコンソールに日付を表示します。

Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThruGet-Content -Path .\DateTimeFile1.logTuesday, May 14, 2019 8:24:27 AMTuesday, May 14, 2019 8:24:27 AM5/14/2019 8:24:27 AM

Add-Contentコマンドレットは、現在のディレクトリに二つの新しいファイルを作成します。 Valueパラメーターには、Get-Dateコマンドレットの出力が含まれます。 PassThruパラメーターは、追加された内容をパイプラインに出力します。出力を受信するコマンドレットは他にないため、PowerShellコンソールに表示されます。Get-ContentDateTimeFile1.logを表示します。

例3:指定したファイルの内容を別のファイルに追加する

この例では、ファイルから内容を取得し、その内容を変数に格納します。 変数は、コンテンツを別のファイルに追加するために使用されます。

$From = Get-Content -Path .\CopyFromFile.txtAdd-Content -Path .\CopyToFile.txt -Value $FromGet-Content -Path .\CopyToFile.txt
  • Get-ContentCopyFromFile.txt$From変数に格納します。
  • Add-ContentCopyToFile.txt$From変数の内容を使用して更新します。
  • Get-ContentコマンドレットはCopyToFileを表示します。txt。

例4:パイプラインを使用して、指定したファイルの内容を別のファイルに追加します

この例では、ファイルから内容を取得し、それをAdd-Content

Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txtGet-Content -Path .\CopyToFile.txt

Get-ContentCopyFromFile.txtAdd-ContentCopyToFile.txtGet-ContentCopyToFile.txtを表示します。

例5:新しいファイルを作成して内容をコピーする

この例では、新しいファイルを作成し、既存のファイルの内容を新しいファイルにコピーし

Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)Get-Content -Path .\NewFile.txt
  • Add-Contentコマンドレットは、パスと値のパラメーターを使用して、現在のディレクトリに新しいファイルを作成します。
  • Get-ContentCopyFromFile.txtの内容を取得し、それをValueパラメーターに渡します。 Get-ContentAdd-Contentコマンドが開始される前にコマンドが終了することを保証します。
  • Get-ContentNewFile.txtの内容を表示します。

例6:読み取り専用ファイルにコンテンツを追加

このコマンドは、IsReadOnly file属性がTrueに設定されている場合でも、ファイルに値を追加します。この例には、読み取り専用ファイルを作成する手順が含まれています。

New-Item -Path .\IsReadOnlyTextFile.txt -ItemType FileSet-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $TrueGet-ChildItem -Path .\IsReadOnlyTextFile.txtAdd-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -ForceGet-Content -Path .\IsReadOnlyTextFile.txtMode LastWriteTime Length Name---- ------------- ------ -----ar-- 1/28/2019 13:35 0 IsReadOnlyTextFile.txt

  • New-Itemコマンドレットは、PathパラメーターとItemTypeパラメーターを使用して、現在のディレクトリにファイルIsReadOnlyTextFile.txtを作成します。
  • Set-ItemPropertyコマンドレットは、NameパラメーターとValueパラメーターを使用して、fileのisreadonlyプロパティをTrueに変更します。
  • Get-ChildItemr)を持っていることを示しています。
  • Add-Contentコマンドレットは、Pathパラメーターを使用してファイルを指定します。 値parameterincludesには、ファイルに追加するテキスト文字列が含まれます。 Forceパラメーターは、テキストを読み取り専用のファイルに書き込みます。
  • Get-Contentコマンドレットは、Pathパラメーターを使用してファイルの内容を表示します。読み取り専用属性を削除するには、値parametersetをFalseSet-ItemPropertyコマンドを使用します。

    例7:Add-Contentでフィルターを使用する

    Add-Contentコマンドレットにフィルターを指定できます。 フィルタを使用してPathparameterを修飾する場合は、パスの内容を示すために末尾のアスタリスク(*C:\Temp*.txtファイルの内容を”Done”という単語を追加します。

    Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"

    パラメータ

    -AsByteStream

    コンテンツをバイトのストリームとして読み取る必要があることを指定します。 このパラメータはPowerShell6.0で導入されました。

    Encodingパラメーターを指定してAsByteStreamパラメーターを使用すると、警告が発生します。 TheAsByteStream parameter ignores any encoding and the output is returned as a stream of bytes.

    Type: SwitchParameter
    Position: Named
    Default value: None
    Accept pipeline input: False
    Accept wildcard characters: False
    -Confirm

    Prompts you for confirmation before running the cmdlet.

    Type:
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる: False
    パイプライン入力を受け入れる:
    パイプライン入力を受け入れる:
    パイプライン入力を受け入れる:
    パイプライン入力を受け入れる:ワイルドカード文字: False
    -credential

    このパラメータは、インストールされているプロバイダではサポートされていませんPowerShell.To 別のユーザーを偽装するか、このコマンドレットを実行するときに資格情報を昇格するには、Invoke-Commandを使用します。

    Type: PSCredential
    Position: Named
    Default value: None
    Accept pipeline input: True
    Accept wildcard characters: False
    -Encoding

    Specifies the type of encoding for the target file. The default value is utf8NoBOM.

    Encoding is a dynamic parameter that the FileSystem provider adds to the Add-Content cmdlet. Thisparameterはファイルシステムドライブでのみ動作します。

    このパラメータに使用できる値は次のとおりです。

    • ascii:ASCII(7ビット)文字セットのエンコーディングを使用します。
    • bigendianunicode:ビッグエンディアンバイトオーダーを使用してUTF-16形式でエンコードします。
    • bigendianutf32:ビッグエンディアンバイトオーダーを使用してUTF-32形式でエンコードします。
    • oem:MS-DOSおよびコンソールプログラムのデフォルトのエンコーディングを使用します。
    • unicode
    • unicode

    : リトルエンディアンのバイト順を使用してUTF-16形式でエンコードします。

  • utf7:UTF-7形式でエンコードします。
  • utf8:UTF-8形式でエンコードします。
  • utf8BOM:バイト順マーク(BOM)付きのUTF-8形式でエンコード
  • utf8NoBOM:バイト順マーク(BOM)なしのUTF-8形式でエンコード
  • utf32:UTF-32形式でエンコードします。

PowerShell6から始まります。2、Encodingパラメータは、登録されたコードページの数値Id(-Encoding 1251-Encoding "windows-1251"のような)も許可します。 詳細については、.netのドキュメントforEncodingを参照してください。コードページ。注意:UTF-7*の使用は推奨されなくなりました。 PowerShell7.1では、エンコーディングパラメータにutf7を指定すると、警告が書き込まれます。Tr>

ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32

Position: Named Default value: UTF8NoBOM Accept pipeline input: False Accept wildcard characters: False
-Exclude

Specifies, as a string array, an item or items that this cmdlet excludes in the operation. The valueof this parameter qualifies the Path parameter. *.txtなどのパス要素またはパターンを入力します。 ワイルドカード文字を使用できます。 Excludeパラメータは、コマンドにC:\Windows\*C:\Windowsディレクトリの内容をワイルドカード文字

タイプ: 文字列 位置: 名前 デフォルト値: なし パイプライン入力を受け入れます: False ワイルドカード文字を受け入れる: True
-Filter

パスパラメータを修飾するフィルタを指定します。 FileSystemproviderは、フィルターの使用をサポートする唯一のインストール済みPowerShellプロバイダーです。 ファイルシステムフィルタ言語の構文は、about_wildcardsにあります。フィルターは、取得後にPowerShellがオブジェクトをフィルター処理するのではなく、cmdletがオブジェクトを取得するときにプロバイダーが適用するため、他のパラメーtr>

タイプ: 文字列 位置: 位置: 位置: 位置: 位置: 位置: 位置:: 名前付き デフォルト値: なし パイプライン入力を受け入れる: False ワイルドカード文字を受け入れる: True
-Force

は読み取り専用属性をオーバーライドし、読み取り専用ファイルにコンテンツを追加できます。 たとえば、Forceは読み取り専用属性を上書きしたり、ファイルパスを完了するためにディレクトリを作成したりしますが、ファイル権限を変更しようとtr>

タイプ: スイッチパラメータ 位置: 位置: 位置: 位置: 位置: 位置: 位置: 位置:: 名前付き デフォルト値: なし パイプライン入力を受け入れる: False ワイルドカード文字を受け入れる: False
-Include
-Include
-Include

は、このコマンドレットが操作に含める項目を文字列配列として指定します。 このパラメーターのvalueofは、Pathパラメーターを修飾します。 "*.txt"などのパス要素またはパターンを入力します。 ワイルドカード文字を使用できます。 Includeパラメータは、コマンドにC:\Windows\*C:\Windowsディレクトリの内容をワイルドカード文字

タイプ: 文字列 位置: 名前 デフォルト値: なし パイプライン入力を受け入れます: False ワイルドカード文字を受け入れる:/td> True
-LiteralPath

一つ以上の場所へのパスを指定します。 LiteralPathの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、PowerShellにエスケープシーケンスとして文字を解釈しないように指示します。

詳細については、about_quoting_rulesを参照してください。tr>

タイプ: 文字列 エイリアス: エイリアス: エイリアス: エイリアス: エイリアス: エイリアス: エイリアス: : 位置: 名前 デフォルト値: なし パイプライン入力を受け入れる: True ワイルドカード文字を受け入れる: False
-nonewline

は、このコマンドレットがコンテンツに新しい行またはキャリッジリターンを追加しないことを示します。

入力オブジェクトの文字列表現が連結されて出力が形成されます。 出力文字列の間には空白や改行は挿入されません。 最後の出力文字列の後に改行は追加されません。tr>

タイプ: スイッチパラメータ 位置: 名前 デフォルト値: なし パイプライン入力を受け入れます: False パイプライン入力を受け入れます: False ワイルドカード文字を受け入れる: false
-passthru

追加されたコンテンツを表すオブジェクトを返します。 既定では、このコマンドレットはanyoutputを生成しません。

タイプ:
パイプライン入力を受け入れる: False
ワイルドカード文字を受け入れる: False
ワイルドカード文字を受け入れる: False
-path

追加のコンテンツを受け取るアイテムへのパスを指定します。ワイルドカード文字を使用できます。パスは、コンテナではなくアイテムへのパスでなければなりません。たとえば、ディレクトリへのパスではなく、1つ以上のファイルへのパスを指定する必要があります。複数のパスを指定する場合は、カンマを使用してパスを区切ります。/td>

タイプ: 文字列 位置: 0 デフォルト値: なし パイプライン入力を受け入れます: True パイプライン入力を受け入れます: True ワイルドカード文字を受け入れる: true
-stream

注意

このパラメータはwindowsでのみ使用できます。

コンテンツの代替データストリームを指定します。 ストリームが存在しない場合、このコマンドレットはcreatesitを作成します。 ワイルドカード文字はサポートされていません。

Streamは、ファイルシステムプロバイダがAdd-Contentに追加する動的パラメータです。 Thisparameterはファイルシステムドライブでのみ動作します。Add-ContentZone.Identifierなどのalternatedataストリームのコンテンツを変更できます。 ただし、インターネットからダウンロードされたファイルをブロックするセキュリティチェックを排除するために、この方法はお勧めしません。 ダウンロードしたファイルが安全であることを確認する場合は、Unblock-Fileコマンドレットを使用します。

This parameter was introduced in PowerShell 3.0.

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Value

Specifies the content to be added. 引用符で囲まれた文字列を入力するか、Get-Dateが生成するDateTimeオブジェクトなど、コンテンツを含むオブジェクトを指定します。

パスは単なる文字列であるため、パスを入力してファイルの内容を指定することはできません。Get-Contentコマンドを使用してコンテンツを取得し、それをValueパラメータに渡すことができます。

タイプ: オブジェクト 位置: 1 デフォルト値: なし パイプライン入力を受: True Accept wildcard characters: False
-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type: SwitchParameter
Aliases: wi
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters:

入力

システム。オブジェクト、システム。管理。自動化。PSCredential

値、パス、または資格情報をSet-Contentにパイプすることができます。

出力

なしまたはシステム。文字列

PassThruパラメーターを使用すると、Add-Contentはシステムを生成します。コンテンツを表す文字列オブジェクト。 それ以外の場合、このコマンドレットは出力を生成しません。

注意事項

  • オブジェクトをAdd-Contentにパイプすると、オブジェクトは項目に追加される前に文字列に変換されます。 オブジェクトの型によって文字列の形式が決まりますが、その形式はオブジェクトのデフォルト表示とは異なる場合があります。 文字列の形式を制御するには、sendingコマンドレットの書式設定パラメーターを使用します。また、Add-Contentacで参照することもできます。 詳細については、”about_aliases”を参照してください。
  • Add-ContentGet-PSProviderと入力します。 詳細については、”about_providers”を参照してください。
  • about_aliases
  • about_providers
  • クリアコンテンツ
  • Get-Content
  • Get-Item
  • New-Item
  • Set-Content
  • Set-Content
    • Related Posts

      コメントを残す

      メールアドレスが公開されることはありません。 * が付いている欄は必須項目です