HIRO's.NET Blog

PowerShellが好き

目次

Blog 利用状況

ニュース

あわせて読みたい

書庫

日記カテゴリ

リンク

指定したファイルの行数を取得する(Windows PowerShell Tips)

PowerShellにはファイル操作を行うコマンドレットがいくつか(Get-Content, Add-Contentなど)あるのですが、ファイルの行数を取得できるようなコマンドレットはありません。

たとえばGet-Contentコマンドレットは大雑把にいえばファイル内容を取得するコマンドレットですが、ファイル行数を取得すようなパラメータは存在しません。

既存のコマンドレットの組み合わせで何とかならないか模索していたところ Get-ContentとMeasure-Objectコマンドレットで行けそうなことがわかりました。

 

Get-Contentで読み取った内容を、パイプを使用してMeasure-Objectへ渡してやると Countプロパティで行数を取得することができます。

PS C:\Users\HIRO> Get-Content "Test.txt" | Measure-Object

Count    : 13
Average  :
Sum  :
Maximum  :
Minimum  :
Property :

 

といった感じです。

これは、Test.txtは13行あることを示しています。

投稿日時 : 2008年1月9日 10:23

コメントを追加

# 指定したファイルの行数を取得する(関数版)(Windows PowerShell Tips) 2008/01/09 10:32 HIRO's.NET Blog

指定したファイルの行数を取得する(関数版)(Windows PowerShell Tips)

# re: 指定したファイルの行数を取得する(Windows PowerShell Tips) 2008/01/09 11:11 Chuki

■Power-Shellの好きなところ。

なんとなくアバウトに出来てしまうところ。
#テンポラリの障害対策なんかに最高^^

■嫌いなところ。
デフォルトの機能がやってみないとどんな動作するかわからなくて、何故そのように動くのかの根拠を見出しにくいこと^^;

-Line を付けたら空行無視で、つけないと総行数
どこに根拠を求めれば^^;。というか Countってどっからやってきたんだろう(Get-Member やればいいんですが^^;)
根拠がない場合、いつ仕様が変わっても文句が言えないので、運用手順などでドキュメントを残さないといけない場合などにPowerShellが使えない理由の一つだったりしますorz

タイトル
名前
URL
コメント