Windowsでgrepしたい
こんにちは。技術部のMBです。
LinuxライクなWindowsコマンドをさがした経験がある方は多いのではないかと思います。
今回は、Linuxでよく使っているコマンドのうち、個人的なセレクトにて、
Windowsでも同じか、似たような処理が可能なものを記載していきたいと思います。
※コマンドプロンプトで使用できるものもありますが、powershellを想定しています。
概要
- grep → findstr
- head → select -first
- tail → select -last
- ls -t → ls | sort lastwritetime -desc
適当なファイルを準備して実際の使用感覚をみてみましょう。
テスト用ファイル確認
PS C:\Users\MB\Desktop\blog> ls -name
test.txt
test2.txt
PS C:\Users\MB\Desktop\blog> cat test.txt
111
222
333
444
555
666
777
888
999
101010
findstr(grep)
PS C:\Users\MB\Desktop\blog> cat test.txt | findstr 5
555
select -first(head)
PS C:\Users\MB\Desktop\blog> cat test.txt | select -first 5
111
222
333
444
555
select -last(tail)
PS C:\Users\MB\Desktop\blog> cat test.txt | select -last 5
666
777
888
999
101010
ls | sort lastwritetime -desc(ls -t)
PS C:\Users\MB\Desktop\blog> ls | findstr ^-
---- ------------- ------ ----
-a---- 2024/09/26 1:47 90 test.txt
-a---- 2024/09/26 2:26 96 test2.txt
PS C:\Users\MB\Desktop\blog> ls | sort lastwritetime -desc | findstr ^-
---- ------------- ------ ----
-a---- 2024/09/26 2:26 96 test2.txt
-a---- 2024/09/26 1:47 90 test.txt