在 PowerShell 中計算字元數、字數和行數

Rohan Timalsina 2023年1月30日
  1. 在 PowerShell 中使用 Measure-ObjectCmdlet 來計算字元數
  2. 在 PowerShell 中使用 Measure-Object Cmdlet 來計算字數
  3. 使用 Measure-Object Cmdlet 計算 PowerShell 中的行數
  4. 在 PowerShell 中使用 Measure-Object Cmdlet 計算目錄中所有檔案的文字
  5. 在 PowerShell 中使用 measure 來計算字元數、字數和行數
在 PowerShell 中計算字元數、字數和行數

在處理文字檔案時,你可能需要知道檔案中的字元數、單詞數和行數。你可以找到許多工具和網站來計算字元、單詞和行數。

但是如果你想使用命令列,PowerShell 是一個很棒的工具。Measure-Object cmdlet 計算 PowerShell 中物件的屬性值。

它顯示字串物件(如文字檔案)中字元、單詞和行的數值。本教程教授如何使用 PowerShell 計算文字檔案中的字元數、單詞數和行數。

在 PowerShell 中使用 Measure-ObjectCmdlet 來計算字元數

Measure-Object cmdlet 根據命令中使用的引數進行計算。例如,只有在命令中指定了引數時,它才會測量字串物件的屬性值,例如字元、單詞和行。

-Character 引數告訴 Measure-Object 計算輸入物件中的字元數。

以下命令計算目錄 C:\Newtest.txt 檔案中的字元數。

Get-Content C:\New\test.txt | Measure-Object -Character

輸出:

Lines Words Characters Property
----- ----- ---------- --------
                  1065

在上面的示例中,Get-Content cmdlet 獲取 test.txt 檔案的內容。然後將其作為輸入物件通過管道傳送到 Measure-Object 以計算其字元數。

預設情況下,空格被計為字元。你可以使用 -IgnoreWhiteSpace 引數排除字元計數中的空格。

Get-Content C:\New\test.txt | Measure-Object -Character -IgnoreWhiteSpace

輸出:

Lines Words Characters Property
----- ----- ---------- --------
                   894

其他值不顯示,因為它們的引數未指定。

在 PowerShell 中使用 Measure-Object Cmdlet 來計算字數

-Word 引數指示 Measure-Object 計算輸入物件中的單詞數。

下面的示例計算目錄 C:\Newtest.txt 檔案中的單詞數。

Get-Content C:\New\test.txt | Measure-Object -Word

輸出:

Lines Words Characters Property
----- ----- ---------- --------
        173

使用 Measure-Object Cmdlet 計算 PowerShell 中的行數

-Line 引數指示 Measure-Object 計算輸入物件中的行數。

下面的示例計算目錄 C:\New 中的 test.txt 檔案中的行數。

Get-Content C:\New\test.txt | Measure-Object -Line

輸出:

Lines Words Characters Property
----- ----- ---------- --------
    7

你可以使用單個命令中的所有引數來計算檔案中的字元、單詞和行的總數。

Get-Content C:\New\test.txt | Measure-Object -Character -Word -Line

輸出:

Lines Words Characters Property
----- ----- ---------- --------
    7   173       1065

在 PowerShell 中使用 Measure-Object Cmdlet 計算目錄中所有檔案的文字

你還可以計算目錄中所有檔案的字元數、單詞數和行數。以下命令測量 C:\New 目錄中所有 .txt 檔案的字元、單詞和行。

Get-ChildItem C:\New\*.txt | Get-Content | Measure-Object -Character -Word -Line

Get-ChildItem 獲取上述命令中 C:\New 目錄中的所有 .txt 檔案。它的輸出通過管道傳送到 Get-Content 以獲取所有檔案的內容,然後將其通過管道傳送到 Measure-Object 以計算字元、單詞和行數。

輸出:

Lines Words Characters Property
----- ----- ---------- --------
  303  2379      36046

如果你還想計運算元目錄中存在的檔案數,則必須將 -Recurse 引數與 Get-ChildItem 一起使用。

以下示例顯示目錄 C:\New 中所有 .txt 檔案的字元數、單詞數和行數,包括其子目錄。

Get-ChildItem C:\New\*.txt -Recurse | Get-Content | Measure-Object -Character -Word -Line

輸出:

Lines Words Characters Property
----- ----- ---------- --------
 3488 21646     191389

在 PowerShell 中使用 measure 來計算字元數、字數和行數

你還可以使用 measure 命令測量文字檔案中的文字,該命令是 Measure-Object 的內建別名。

此命令將列印 C:\New 目錄中 process.txt 檔案的字元數、單詞數和行數。

Get-Content C:\New\process.txt | measure -Character -Word -Line

輸出:

Lines Words Characters Property
----- ----- ---------- --------
  293  2189      34867

在本文中,你學習了使用 Measure-Object 計算 PowerShell 中文字檔案的字元數、單詞數和行數。

作者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website