先日、トラブルプロジェクトのヘルプに行ってきました。
本職はシステムエンジニアのアーシです。
主にテスト結果の分析などを行ったのですが、トラブルの手伝いに行った先のパソコンはWindowsPCでありながらエクセルは入ってないし、linux環境にアクセスすることもできない。
VBAもbashも使えず、どうやってデータ分析を手伝えるかということで、Windows PowerShellを使ってみることにしました。
初めての現場で知識がないものをいきなり使うという荒業でしたが、対して難しいことはしなかったのでなんとかなりました。
その中でよくデータの確認で使うコマンドで、linux環境ではgrep,head,tailにあたるPowerShellのコマンドを備忘として残しておきます。
①grepに相当するコマンド
slsを使います。
例)カレントディレクトリでsearchを含む行を抽出する
sls "search" *
②headに相当するコマンド
抽出した内容をカッコで囲み、その後に表示したい行番号を[x..y]を0スタートの形式で指定します。
例)カレントディレクトリでsearchを含む行を抽出し、その上位5行(1~5行目)を抽出する
(sls "search" *)[0..4]
③tailに相当するコマンド
headと似ていますが、指定する行番号をマイナスとすることで、下から指定することができます。
例)カレントディレクトリでsearchを含む行を抽出し、その下から5行を抽出する
(sls "search" *)[-5..-1]
Windows PowerShellは最近のWindowsマシンには標準搭載されているので使えるようになっているととっさの時に便利だと思います。
機会があったら他のPowerShellコマンドも修得しておこうかなと思いました。