← 記事一覧 ut.code(); 学習カリキュラム #2

ut.code(); 学習カリキュラム #2

0

黒いアイツ

ターミナル」と呼ばれるソフトウェアがあります。これは、PC をマウスやタッチパネルではなく、文字によって操作するためのソフトウェアです。

macOSのターミナル

サーバーは、ネットサーフィンをしたり、表計算をしたり、ゲームをしたりするためのコンピューターではありません。したがって、サーバーに「画面」に相当するものはないのが普通です。使わなくなった PC をサーバーにする場合はあるんですけどね。したがって、サーバーを操作するためには、このように文字ベースのコマンドを使用する必要が出てきます。

「黒い画面」と呼ばれて恐れられるこのターミナルですが、慣れてしまえば全く怖くありません。今回は、VSCode に内蔵されているターミナルを使用して、サーバーをあれこれ操作していきましょう!

VSCode 統合ターミナルの起動

統合ターミナルの起動

統合ターミナルの起動

メニューからターミナルを起動します。当然のことながらコマンドパレットからも起動できるのでお好みでどうぞ。

ファイルシステムとユーザー

ターミナルの見方

パソコンでは、様々なデータを「ファイル」や「フォルダ」という単位で分けて管理しますよね。コマンドを使ってファイルシステムを操作するとき、普段皆さんが目にしている「フォルダ」に相当するものは「ディレクトリ」という名前で呼ばれます。

Linux において、ディレクトリは、「ルートディレクトリ」と呼ばれる特殊なディレクトリを頂点とする木構造で表現されます。この木構造の中の特定の要素を一意に表現するための表記を「パス」と言います。Linux においてパスの区切り文字は「/」で、それが単体で利用された際はルートディレクトリを表します。例えば、ルートディレクトリの中の「home」ディレクトリの中の「utcode」という名前のディレクトリは、「/home/utcode」という形で表現されます。

また、PC は複数のユーザーで使用されることを前提に設計されているため、各ユーザーが使用できる個人的な領域として「ホームディレクトリ」が作成されます。Ubuntu をはじめとした標準的な Linux では、ホームディレクトリは「/home/ユーザー名」にあります。

Linux には、最初から存在している「root」と呼ばれる特殊なユーザーがあります。root ユーザーは、コンピューター内の全てのファイルやディレクトリにアクセスできる権限を持っています。Ubuntu では、root ユーザーのホームディレクトリは/root にあります。

ディレクトリの木構造

相対パスと絶対パス

現在開いているディレクトリを「カレントディレクトリ」と呼びます。すべてのファイルやディレクトリは、ルートディレクトリを基準とした「絶対パス」で表される他、カレントディレクトリからの「相対パス」で表すことができます。例えば、カレントディレクトリが「/home/utcode」のとき、「/home/utcode/pictures/xxx.webp」は「pictures/xxx.webp」と表されます。

パスを表現するとき、他にも様々な記号が利用できます。

カレントディレクトリ 目標のディレクトリ 相対パス
/foo/bar /foo/bar/baz baz 又は ./baz
/foo/bar /foo/bar/baz/foobar baz/foobar 又は ./baz/foobar
/foo/bar/baz /foo/bar .. 又は ./..
/foo/bar/baz /foo ../.. 又は ./../..
どこでも /home/[ユーザー名]/foo ~/foo

カレントディレクトリは「.」、親ディレクトリは「..」、ホームディレクトリは「~」と表されることが分かります。

コマンドの入力方法

コマンドを打ってみた様子

コマンドはスペース区切りで入力し、最初がコマンド名、それ以降をそのコマンドの「引数」と呼びます。コマンド名や引数にスペース文字が含まれる場合は、値全体を「""(ダブルクォーテーション)」で囲むことでスペースが区切り文字として認識されることを防ぐことができます。以下にコマンドの一例を示します。使い方はググってください笑

pwd カレントディレクトリを表示
ls ディレクトリの中身を一覧表示
cd カレントディレクトリを移動
mkdir 新しいディレクトリを作成
touch 新しいファイルを作成

演習問題

  • 「ディレクトリ」「ルートディレクトリ」「パス」「ホームディレクトリ」「root ユーザー」「カレントディレクトリ」「絶対パス」「相対パス」について説明してください。
  • 「/var/log/wifi.log」はどこにある、何という名前のファイルを表していますか。

課題

  • コマンドのみを使用して、「/root」に以下に相当するディレクトリ構造を作成してください。

課題: コマンドを使ってみる

関連記事

第 5 回 ut.code(); 総会を行いました

第 5 回 ut.code(); 総会を行いました

ut.code(); では、11 月 29 日に第 5 回 ut.code(); 総会を行いました。 常設プロジェクトからの発表 まずは、年間を通して活動している常設プロジェクトからの発表を行いました。 新たに追加された機能の紹介や、今後の展望の共有、制作したアプリのデモなどを通して、互いに刺激を受ける機会となりました。 プロジェクト発足会に向けて・アイデアソン 続けて、12 月 13...

大矢 宏輝 ·
第 76 回駒場祭に出展しました

第 76 回駒場祭に出展しました

ut.code(); は、2025 年 11 月 22 〜 24 日 に開催された駒場祭において、企画「あなたのためのプログラミング」を出展しました。 お越しくださった皆様、ありがとうございました! 今回の駒場祭で展示した内容は、以下の特設サイトからご覧いただけます。 https://kf76.utcode.net/ 今回は、定番企画「はじめてのプログラミング...

安村 拓也 ·
第 4 回 ut.code(); 総会を開催しました!

第 4 回 ut.code(); 総会を開催しました!

10 月 25 日に行った第 4 回 ut.code(); 総会の報告です。 常設プロジェクトからの発表 最初に、年間を通して活動している常設プロジェクトからの発表を行いました。 新たに追加された機能の紹介や、今後の展望の共有、制作したアプリのデモなどを通して、互いに刺激を受ける機会となりました。 駒場祭プロジェクトからの発表 11 月 22 日に迫った駒場祭に向けて、1...

中村 渉吾 ·