Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コマンドラインの使い方 / 01-d-cli
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kaityo256
PRO
March 02, 2026
Education
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コマンドラインの使い方 / 01-d-cli
kaityo256
PRO
March 02, 2026
More Decks by kaityo256
See All by kaityo256
勾配ブースティングと決定木の話 / gradient boosting and decision trees
kaityo256
PRO
6
1.3k
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.7k
この講義について / 00-setup
kaityo256
PRO
2
410
GitHubによるWebアプリケーションのデプロイ / 07-github-deploy
kaityo256
PRO
2
330
演習:Gitの基本操作 / 04-git-basic
kaityo256
PRO
1
550
演習:Gitの応用操作 / 05-git-advanced
kaityo256
PRO
1
320
演習:GitHubの基本操作 / 06-github-basic
kaityo256
PRO
1
390
バージョン管理とは / 01-a-vcs
kaityo256
PRO
1
360
Gitの仕組みと用語 / 01-b-term
kaityo256
PRO
1
450
Other Decks in Education
See All in Education
[2026前期火5] 論理学(京都大学文学部 前期 第8回)「正規化定理の証明」
yatabe
0
180
LinkedIn
matleenalaakso
0
4.4k
[2026前期火5] 論理学(京都大学文学部 前期 第1回)「ハルシネーションを外部世界との対応を考えずに見分ける方法」
yatabe
0
1.1k
Padlet opetuksessa
matleenalaakso
12
16k
2026年度春学期 統計学 講義の進め方と成績評価について (2026. 4. 9)
akiraasano
PRO
0
200
モブ社員がモブエンジニアを名乗って得られたこと_20260413
masakiokuda
4
540
生成AI時代の情報発信
molmolken
0
140
2026年度春学期 統計学 第5回 分布をまとめるー記述統計量(平均・分散など) (2026. 5. 7)
akiraasano
PRO
0
150
参加制約理論
roadofhope
0
120
Where Data Meets Storytelling
georgesinnott
0
110
Lectura 2 (PIT : Python Basico)
robintux
0
360
[2026前期火5] 論理学(京都大学文学部 前期 第6回)「かつとまたはの規則」
yatabe
0
350
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Building an army of robots
kneath
306
46k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Utilizing Notion as your number one productivity tool
mfonobong
4
330
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
HDC tutorial
michielstock
2
720
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
Transcript
1 35 コマンドラインの使い方 慶應義塾大学理工学部物理情報工学科 渡辺 2026年3月9日 計算物理春の学校2026「計算物理屋のためのGit/GitHub入門」
2 35 はじめに Gitは、もともとLinuxの開発のために作られた コマンドラインから操作することが前提 本講義でもGitを主にコマンドラインから操作する そもそもコマンドラインとは何か?
3 35 インタフェースとは ユーザ コンピュータ インタフェース コンピュータに何かさせるにはユーザが「指示」をする必要がある 指示を伝える手段が「インタフェース」
4 35 インタフェース グラフィカルユーザインタフェース (Graphical User Interface, GUI) コマンドラインインタフェース (Command-Line
Interface, CLI) コンピュータへ出す指示を画面上で視覚的に表現する 操作や対象を抽象化したアイコンを利用する マウスやタッチパネルなどを入力デバイスとする コマンド文字列でコンピュータへ指示を出す キャラクタユーザインタフェース(CUI)とも キーボードを主な入力デバイスとする ターミナルから入力する
5 35 ターミナル コマンドラインインターフェースの舞台は WindowsならGit BashやWSL (Ubuntu) MacやLinuxならターミナル いわゆる「黒い画面」
6 35 ターミナル(端末) もともとは大型コンピュータ(ホスト)に接続され、利用者が命令を送るための インタフェースのこと ホストコンピュータ ターミナル(ユーザーインタフェース) ホストコンピュータは高価であり、複数人で共有して利用するために 端末が必要だった
7 35 ターミナルエミュレータ Macの「ターミナル」やWSLのUbuntuの画面は、 「ターミナルエミュレータ」と呼ばれ、VT100 の動作をエミュレートするものがほとんど ClickRick – CC-BY-SA 3.0
https://commons.wikimedia.org/w/index.php?curid=6693684 ホスト IBM System/360 ターミナル IBM 2260 DEC PDP-11 VT100 VT100 • 昔はタイプライターが端末であった(テレタイプ端末, TTYの語源) • その後ディスプレイを使ったビデオターミナルが出現 • ホストコンピュータにはビデオターミナルが付属していたが、DECのVT100 がターミナルのスタンダードに
8 35 OS・シェル・ターミナル ハードウェア OS シェル ユーザ オペレーティングシステム (Operating System,
OS) ハードウェアを抽象化し、資源を制御、割り当てるシステム シェル (Shell) ユーザのコマンド入力を解釈し、OS上でプログラムを実行する ターミナル (Terminal) 入力と表示を提供するユーザインターフェース $ git push ターミナル
9 35 コマンドプロンプト シェルにおいて、ユーザからの入力待ちを示すもの 「$」で表現することが多い。 $ ls –la dir コマンドプロンプト
(command prompt) コマンド (command) プロンプトに入力する命令 引数(ひきすう)やオプションを指定できる コマンド プロンプト コマンド オプション 引数
10 35 コマンドプロンプト watanabe@MacAir ~ % コマンドプロンプトは様々な表記がある。一行の場合もあるし、二行に渡 る場合もある。右に情報を掲載する場合もある。 [watanabe@Server ~
]$ watanabe@iMac: $ [~] $ ls file.txt 以降はコマンドプロンプトを「$」で表記し、$で始まら ないテキストはコマンドの出力であると約束する コマンドプロンプト ユーザの入力 出力されたテキスト
11 35 ディレクトリとパス ディレクトリ (Directory) 複数のファイルをまとめるフォルダのこと 以後、フォルダのことを「ディレクトリ」と呼ぶ カレントディレクトリ (Current Directory)
ワーキングディレクトリとも 「現在自分が見ているディレクトリ」のこと CUIだとどこにいるかわからなくなる場合があるので注意 ホームディレクトリ (Home Directory) ターミナルを開いた直後のカレントディレクトリ 引数無しのcdコマンドで戻ってくる場所
12 35 ディレクトリとパス パス (path) 階層構造の中でファイルの位置を示す文字列 デフォルトでファイルを探しに行くディレクトリ 絶対パス (absolute path)
最上位階層から目的のファイルまでの位置 相対パス (relative path) カレントディレクトリから目的のファイルまでの位置 ルートディレクトリ
13 35 ディレクトリとパス c Data Apps Fig Music fig1.png カレント
ディレクトリ ルート ディレクトリ 目的の ファイル c/Data/Fig/fig1.png Fig/fig1.png 絶対パス 相対パス
14 35 ディレクトリとパス 特別なディレクトリ . .. カレントディレクトリ カレントディレクトリの親ディレクトリ 相対パスで「真下」以外のパスを指定するのに使用
15 35 ディレクトリとパス c Data Apps Fig Music fig1.png カレント
ディレクトリ ルート ディレクトリ 目的の ファイル c/Data/Fig/fig1.png ../Fig/fig1.png 絶対パス 相対パス
16 35 ls 指定したディレクトリ内のファイルやディレクトリを表示する 引数を指定しない場合はカレントディレクトリ直下を表示する temp dir1 dir2 file1.txt file2.txt
file3.txt カレントディレクトリ lsが表示する範囲 引数 (argument) コマンドの直接の目的語 $ ls dir1/ dir2/ file1.txt file2.txt $ ls dir1 file3.txt
17 35 ls オプション (option) コマンドの振る舞いを変えるもの ハイフンに続けて渡す 一度に複数指定することもできる $ ls
-l total 0 drwxr-xr-x 1 watanabe 197121 0 Sep 26 23:06 dir1/ drwxr-xr-x 1 watanabe 197121 0 Sep 26 23:06 dir2/ -rw-r--r-- 1 watanabe 197121 0 Sep 26 23:06 file1.txt -rw-r--r-- 1 watanabe 197121 0 Sep 26 23:06 file2.txt $ ls -a ./ ../ dir1/ dir2/ file1.txt file2.txt -l リスト表示 -a 隠しファイルも表示する
18 35 エラーメッセージ できない操作を指示するとエラーが表示される $ ls non-existing-dir ls: cannot access
'non-existing-dir': No such file or directory 例: lsの引数に存在しないディレクトリを指定した エラーの現象と理由が表示される 現象:non-existing-dirにアクセスできない 理由:そんなファイルやディレクトリが存在しない エラーメッセージは平易な英語なので読めるはず ちゃんと読むのが脱初心者への近道 → 読め!
19 35 cd 引数で指定したディレクトリをカレントディレクトリとする 引数を指定しない場合はホームディレクトリへ移動する $ cd dir1 $ ls
file3.txt temp dir1 dir2 file1.txt file2.txt file3.txt lsが表示する範囲 cd dir1 ls
20 35 cd $ cd 引数無しではホームディレクトリへ移動する 場所がよくわからなくなったらこれを使う $ cd ..
親ディレクトリへ移動する よく使うので覚えておくこと
21 35 mkdir 引数で指定したディレクトリを作成する (新規作成→フォルダ) 引数は必須 $ ls dir1/ dir2/
file1.txt file2.txt $ mkdir dir3 $ ls dir1/ dir2/ dir3/ file1.txt file2.txt ディレクトリ dir3を作成 ディレクトリ dir3が作成された ※ ディレクトリの削除はrmdirだが、あまり使わない
22 35 mv ファイルやディレクトリの移動、リネームを行う 「移動元」「移動先」と引数を二つとる 移動元は存在するファイルやディレクトリでなければならない 移動先が存在するかしないかで動作が変わる mv 移動元 移動先
移動先が存在するディレクトリ →そこに移動 移動先が存在しないファイルやディレクトリ →移動元のファイルやディレクトリを移動した上でリネーム
23 35 mv temp dir1 dir2 file1.txt file2.txt file3.txt カレントディレクトリ
$ mv file1.txt dir2 mv ファイル ディレクトリ ファイルをそのディレクトリへ移動する
24 35 mv mv ファイル ディレクトリ ファイルをそのディレクトリへ移動する temp dir1 dir2
file1.txt file2.txt file3.txt カレント ディレクトリ $ mv ../file1.txt .
25 35 mv mv ファイル ファイル temp dir1 dir2 file1.txt
file2.txt file3.txt カレントディレクトリ $ mv file2.txt file3.txt file3.txt リネーム
26 35 cp ファイルをコピーする 移動元のファイルが消えない以外はほぼmvと同じ temp dir1 dir2 file1.txt file2.txt
file3.txt カレント ディレクトリ $ cp –r dir1 dir2 dir1 file3.txt ディレクトリのコピーには-rオプションが必要
27 35 rm ファイルやディレクトリを削除する ディレクトリの削除には-rオプションが必要 temp dir1 dir2 file1.txt file2.txt
file3.txt カレントディレクトリ $ rm –r dir1 ※ 問答無用で中身ごと削除するので注意。-iオプションを付けると確認する
28 35 catとecho cat ファイル名 ファイルの中身を表示する echo メッセージ メッセージを表示する echo
メッセージ | プログラム メッセージを中身とするファイルを作成 echo メッセージ > ファイル名 メッセージをプログラムの入力として実行
29 35 Vim Vim (ヴィム) 多くの環境でGitのデフォルトエディタ モードという概念がある とっつきにくいが慣れると使いやすい
30 35 Vimのモード ノーマル モード インサート モード ビジュアル モード コマンドライン
モード https://knowledge.sakura.ad.jp/21687/ ゴリラと学ぶVim講座 i ESC ESC ESC : v
31 35 Vimのモード Vimのモードはここを見ればわかる ノーマルモード :何も表示されない インサートモード:「-- INSERT --」と表示 ビジュアルモード:「--
VISUAL --」と表示 コマンドモード : 「:」が表示され入力待ちに
32 35 Vimの終了の仕方 ESCキーを押してノーマルモードに戻る ファイル名が指定されている? Shift + ZZ (シフトキーを押しながらZを二回) 現在の編集内容を保存する?
コマンドモードで : q! コマンドモードで :wq ファイル名 No No Yes Yes ※ 既存のファイルを上書きする場合はwq!
33 35 VimとGit GitからVimが呼び出される場合、ファイル名が指定された状態、 かつノーマルモードで起動される 1. 「i」を押してインサートモードへ 2. 内容を編集 3.
エスケープキーを押してノーマルモードへ 4. 「ZZ」でエディタを抜ける その後、以下の作業をすればよい
34 35 Vimのノーマルモードでの編集 ノーマルモードで様々な編集ができる とりあえずこれだけ覚えておく(後で使います) カーソル移動 カーソル位置の行を切り取り 切り取った行をカーソル位置の行の下に貼り付け 切り取った行をカーソル位置の行の上に貼り付け h
j k l dd p P
35 35 まとめ インタフェースにはコマンドラインとグラフィカルなものがある 本講義ではGitを主にコマンドラインで使う コマンドラインインタフェースでは、プロンプトにコマンドを入力する コマンドには引数やオプションを与える エラーメッセージを読む インタフェースについて Vim
本講義ではGitのエディタとしてVS Code及びVimを使う Vimにはモードがある 困ったらエスケープキー 終了は「ZZ」