LPIC101_regex_B60

>100 Views

April 22, 26

スライド概要

profile-image

はじめまして、ALJ Education Plus 株式会社のyukikoと申します。 IT教育支援や、DX推進が可能です。 ◆ スキル LPIC レベル2 AI / Python Splunk BI(データ可視化・分析) ◆ その他 新卒・未経験の学生向けに、エンジニア転職を応援する資料を趣味で作成しています。 もしよろしければご活用ください。 ◆IT研修講師をお探しの方は [email protected] にお気軽にお問い合わせください。 ※ALJ Education Plus 株式会社を通して、ご支援させていただきます。 ◆Zenn https://zenn.dev/yukiko_sapporo/articles/46c13e9f98b110

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

LPIC-101 マスター学習ツール【B問題セット】 問60 シェル・変数 Q ユーザーtanakaが「echo "$HOME"」を実行すると、どのような出力が表示されますか 。 ✓ 正解 → /home/tanaka (ダブルクォート内の変数は展開される) LPIC-101 | 問60 シェル・変数 1 /6

2.

1 この用語は? クォートと変数展開のルール ダブルクォート(")内では変数が展開される/シングルクォート(')内は全てリテラル かんたん定義 ■ " " ダブルクォート: 変数展開あり($変数、$()、`cmd`すべて展開) ■ ' ' シングルクォート: 全てリテラル(何も展開されない) ■ クォートなし: 変数展開あり+単語分割あり(空白で分割される) ■ $HOME は環境変数で、ユーザーのホームディレクトリパスを指す(例: tanakaなら /home/tanaka) LPIC-101 | 問60 シェル・変数 2 /6

3.

2 簡単に書くよ ※正確な表現ではありません ざっくりイメージ ■ $HOMEは『自分のホームディレクトリ』を指 す環境変数 ■ tanakaユーザーの $HOME = /home/tanaka ■ ダブルクォート "$HOME" → 中身が置き換え られて /home/tanaka ■ シングルクォート '$HOME' → そのまま $HOME と表示(リテラル) ■ × tanaka tanaka → $HOMEは /home/tanaka なので、そうはならない ■ × 'tanaka' '$HOME' → クォート自体は画面に 出ない 図解で理解 クォートで変数展開は変わる! echo "$HOME" → /home/tanaka ★ 正解 echo '$HOME' → $HOME リテラル echo $HOME → /home/tanaka 展開あり " " = 展開あり / ' ' = リテラル LPIC-101 | 問60 シェル・変数 3 /6

4.

3 詳しく書くよ ※原理原則 原理原則: ダブルクォート " " 内の $変数 は展開される/シングルクォート ' ' 内は全てリテラ ル(展開されない) ■ 〇 正解:/home/tanaka ■ ■ $HOME は環境変数で、ログインユーザーのホームディレクトリを示す tanaka の $HOME = /home/tanaka (/etc/passwd の 6番目フィールドで定義) ■ ダブルクォート内では $変数・$()コマンド置換・`cmd`も展開される ■ ■ シングルクォート内では何も展開されない(完全リテラル)。echo '$HOME' → $HOME クォートなし(echo $HOME)も展開される。ただしスペース入り変数は単語分割される ■ ■ × tanaka tanaka → 両方とも$HOMEなら/home/tanaka、意味不明な選択肢 × tanaka /home/tanaka → 最初のtanakaがどこから来たか不明 ■ ■ × 'tanaka' '$HOME' → シングルクォート自体は出力に含まれない × 'tanaka tanaka' → 同上 ■ ■ 実務Tips:空白を含む値は必ずダブルクォートで囲む → echo "$FILENAME"(安全) 他の主要環境変数: $USER(ユーザー名)、$PWD(カレントディレクトリ)、$PATH(実行検索パス)、 LPIC-101 | 問60 シェル・変数 4 /6 $SHELL(ログインシェル)

5.

4 実機でやって問題ないか コマンド例 + Ubuntu / RedHat 差分 $ whoami tanaka $ echo "$HOME" # ダブルクォート → 展開 /home/tanaka $ echo '$HOME' # シングルクォート → リテラル $HOME $ echo $HOME # クォートなし → 展開 /home/tanaka $ echo "user=$USER, home=$HOME" # 混在もOK Ubuntu Ubuntu の bash 標準機能。環境変数は /etc/environment や ~/.bashrc、~/.profile で設定。useradd で自動的に $HOME=/home/ユーザー名 が設定される。 LPIC-101 | 問60 シェル・変数 RedHat/RHEL RHEL/Rocky も同じ。useradd のデフォルトは /home/ユ ーザー名。/etc/skel のファイルがホームにコピーされる 。$HOMEの挙動は全POSIXシェルで共通。 5 /6

6.

★ 一言でまとめるよ! " " = 変数展開、' ' = リテラル / echo "$HOME" = /home/tanaka うさうさ先生より ユキコさん、これは頻出ポイント! ダブル→展開、シングル→そのまま、クォートなし→展開(でも単語 分割あり)。3パターンの違いを表で覚えましょう♪ LPIC-101 | 問60 シェル・変数 6 /6