![見出し画像](https://assets.st-note.com/production/uploads/images/151396953/rectangle_large_type_2_b847a7c60365354bc2e005c6cd6f0a0f.png?width=1200)
PowerShell100本ノック 51~60
PowerShellを学ぶためのコンテンツとして「PowerShell100本ノック」を作成したので公開します。PowerShellは学習コンテンツが非常に少なく、自分自身も習得に苦労した経験から作成するに至りました。今回は51から60問目まで。
前提条件
- Windows PowerShell 5.1
- なにがしかのプログラミング経験がある
含まれる内容
問題 1-10 標準出力
問題 11-20 標準入力、条件分岐、繰り返し
問題 21-30 配列、多次元配列
問題 31-40 連想配列
問題 41-50 ファイル、フォルダ操作
問題 51-60 ファイル検索、パイプ処理
問題 61-70 関数
問題 71-80 再帰関数、ZIP圧縮解凍、スクレイピング
問題 81-90 環境変数
問題 91-100 実行ポリシーとレジストリ操作
記事構成
記事の上側に問題が10問、下側に答えが10問
(上や下に行ったり来たりが面倒な様子なら構成を変えます)
問題 51から60
51.サブフォルダ検索
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めてファイルの一覧を表示せよ
52.サブフォルダ検索 拡張子フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を表示せよ
53.サブフォルダ検索 拡張子フィルタ フルパス表示
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フルパス表示せよ
54.サブフォルダ検索 容量、更新日表示
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フォルダ名、ファイル名、容量、更新日時を表示せよ
55.サブフォルダ検索 件数限定
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フォルダ名、ファイル名、容量、更新日時を30件だけ表示せよ
56.サブフォルダ検索 更新日フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、更新日2024/05/10以降のファイルのみ表示せよ
57.サブフォルダ検索 容量フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、ファイル容量3000kb未満のファイルのみ表示せよ
58.サブフォルダ検索 文字フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めてファイル一覧を取得し、ファイルに"最新版"の文字が含まれるファイルのみ表示せよ
59.数列
1から9までの数列があり、この中から偶数のみ表示するプログラムをwhere-objectを使って作成せよ
60.FizzBuzz
次の条件を満たすプログラムを作成せよ「1から100までの数字を順に改行しながら表示する」「数字が3の倍数のときは数字の代わりにFizzと表示する」「数字が5の倍数のときは数字の代わりにBuzzと表示する」「数字が3と5の倍数のときは数字の代わりにFizzBuzzと表示する」
答え 51から60
51.サブフォルダ検索
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めてファイルの一覧を表示せよ
# 51.
Get-ChildItem C:\rensyu -Recurse
52.サブフォルダ検索 拡張子フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を表示せよ
# 52.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse
53.サブフォルダ検索 拡張子フィルタ フルパス表示
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フルパス表示せよ
# 53.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse | Select-Object FullName
54.サブフォルダ検索 容量、更新日表示
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フォルダ名、ファイル名、容量、更新日時を表示せよ
# 54.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse | Select-Object Directory, Name, Length, LastWriteTime
55.サブフォルダ検索 件数限定
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、フォルダ名、ファイル名、容量、更新日時を30件だけ表示せよ
# 55.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse | Select-Object Directory, Name, Length, LastWriteTime | last 30
56.サブフォルダ検索 更新日フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、更新日2024/05/10以降のファイルのみ表示せよ
# 56.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse | where-object LastWriteTime -ge 2024/05/10
57.サブフォルダ検索 容量フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めて拡張子txtのファイル一覧を取得し、ファイル容量3000kb未満のファイルのみ表示せよ
# 57.
Get-ChildItem C:\rensyu -Filter *.txt -Recurse | where-object Length -lt 3000
58.サブフォルダ検索 文字フィルタ
コマンドレット「Get-ChildItem」を使って指定フォルダ(C:¥rensyu)のサブフォルダ配下も含めてファイル一覧を取得し、ファイルに"最新版"の文字が含まれるファイルのみ表示せよ
# 58.
Get-ChildItem C:\rensyu -Recurse | where-object Name -like "*最新版*"
59.数列
1から9までの数列があり、この中から偶数のみ表示するプログラムをwhere-objectを使って作成せよ
# 59.
(1,2,3,4,5,6,7,8,9) | where-object {$_ % 2 -eq 0}
60.FizzBuzz
次の条件を満たすプログラムを作成せよ「1から100までの数字を順に改行しながら表示する」「数字が3の倍数のときは数字の代わりにFizzと表示する」「数字が5の倍数のときは数字の代わりにBuzzと表示する」「数字が3と5の倍数のときは数字の代わりにFizzBuzzと表示する」
# 60.
(1..100) | foreach-object{if(-not(($_ % 3 -eq 0)-or($_ % 5 -eq 0))){ $_ }elseif(($_ % 3 -eq 0)-and($_ % 5 -eq 0)){ "FizzBuzz" }elseif($_ % 3 -eq 0){"Fizz"}elseif($_ % 5 -eq 0){"Buzz"}} | %{write-host $_}
#PowerShell #100本ノック #プログラミング問題 #プログラミング学習 #Windows #教材 #つくってみた #関数 #プログラミング初心者