103.7標準
config.txtから、空白だけの行と、先頭の空白後に#があるコメント行を除外する。
残った設定行だけを表示する。
適切なコマンドはどれか。
× 不正解
除外したい2種類をEREの選択でまとめ、grep -vで一致結果を反転する。先頭空白もパターンへ含める。
詳細解説
誤り
grep -E '^[[:space:]]*(#|$)' config.txt除外対象そのものを表示し、設定行を表示しない。
除外対象だけを表示する。
誤り
grep -v '^#' config.txt字下げされたコメントと空白行が残る。
字下げコメントと空行を除外できない。
誤り
grep -v '^[[:space:]]*$' config.txt空白行は除くがコメント行が残る。
コメント行を除外できない。
正しい
grep -Ev '^[[:space:]]*(#|$)' config.txtコメントまたは空行のパターンへ一致した行を-vで反転除外する。
正解。空行とコメント行の両方を反転除外する。
実際に確かめる
一時的な検証環境で実行できる例です。
printf '%s\n' '# one' ' # two' '' 'key=value' | grep -Ev '^[[:space:]]*(#|$)'期待される結果
key=value理解のポイント
- -vは一致を反転
- 空白後のコメントを考慮
- 空行は$との選択で表現
確認時の注意
- 確認環境: GNU grep 3.x / LC_ALL=C
基礎のおさらい
反転選択
grep -vはパターンそのものを否定するのではなく、行の選択結果を反転する。
空白だけの行
^[[:space:]]*$で空文字を含む空白だけの行を表せる。
問題IDKP-103-108
確認環境GNU grep 3.x / LC_ALL=C
最終技術確認2026-08-12
誤り・権利侵害を報告