Linuxの環境を用意することができる
WSL2を導入して、Ubuntuの環境を構築した。
補足:Dockerを導入したが、エラーが多発したため、断念。
後にインストールしたverが違ったとわかり、再度インストールして解決。
後日対処法をまとめる予定。
Linuxが何かを説明できる
Linuxとは
コマンドでコンピューターを動かす基本的なソフトウェアのこと
「カーネル」+「それを使用するソフトウェア」を組み合わせた状態のこと

Linux | 内容 |
---|---|
カーネル | ハードウェアの制御やファイルの実行、ソフトウェアの実行リソースの管理を行う部分 |
ディストリビューション | カーネルにコマンドやアプリケーションなどのソフトウェアを加えたもの |

有名なディストリビューション
- debian系はubuntu
- Red Hat系はCentOS、Slackware
- 他 Amazon Linux
各ディレクトリの役割
ディレクトリ | 役割 |
---|---|
/bin | 実行ファイルを置くためのディレクトリ 最低限必要な、重要度の高いコマンドを格納している |
/dev | デバイスファイルを格納するディレクトリ |
/etc | 設定ファイルを置くためのディレクトリ |
/home | ホームディレクトリが配置されるディレクトリ |
シェルとは
ユーザとLinuxカーネルの橋渡しをするもの
またはコマンド上でユーザーと対話してハードウェアに指示を伝える秘書役のようなもの
シェルの種類
sh,csh,bash,tcsh,zsh,fish
ログインシェルの確認
echo $SHELL
ディレクトリを操作できる
カレントディレクトリ(自分が今位置するディレクトリ)を確認する
$ pwd
カレントディレクトリ(自分が今位置するディレクトリ)を移動する
$ cd
ディレクトリ内のファイルを表示する
$ ls
option | 内容 |
---|---|
~ | ホームディレクトリへ移動 |
.. | ディレクトリ内のファイルを表示 |
-a | 隠しファイルも合わせて表示 |
-F | 隠ファイルの種類を表示 |
-l | ファイルの詳細情報を表示 |
ディレクトリを作成・削除する
$ mkdir 作成するディレクトリ名
$ rmdir 削除するディレクトリ名
ファイルを作成・削除する
$ touch 作成するファイル名
$ rm 削除するディレクトリ名
マニュアルを確認する
$ man ls
ファイルを操作できる
ファイルの中身を表示する
$ cat -n ファイル名
- -n:行番号を表示する
ファイルの内容をスクロールする
$ less ファイル名
ディレクトリ・ファイルを移動する
$ mv ファイル名 ディレクトリ名
シンボリックリンク:ファイルに別名をつける
$ ln
ファイルを検索する
$ find . -name file.txt(検索条件) -print
- -name ファイル名で探す
- . 検索開始ディレクトリ
文字列を検索する
$ grep
エディタを起動する
$ vim
記号 | 内容 |
---|---|
:q | エディタの終了 |
:w | エディタの保存 |
i | 編集スタート |
esc | 編集終了 |
vimコマンドのインストールを確認する
vim --versio
標準出力とは
標準入出力 | 意味 | 道具 |
---|---|---|
標準入力 | プログラムの標準的な入力 | キーボード |
標準出力 | プログラムの標準的な出力 | 端末ディスプレイ |
標準エラー出力 | プログラムのエラーメッセージを出力する | 端末ディスプレイ |
リダイレクトとは
標準入出力先を変更する機能のこと
記号 | 内容 |
---|---|
< file.txt | 標準入力をファイルに変更する |
> file.txt | 標準出力ファイルに変更する |
>> file.txt | 標準出力をファイルの末尾に追記する |
2> file.txt | 標準エラー出力をファイルを変更する |
2>> file.txt | 標準エラー出力をファイルの末尾に追記する |
> file.txt 2>&1 | 標準出力と標準エラー出力の出力先をファイルに変更する |
/dev/null とは
主に余計な出力を防ぐために使われ主に不要な出力を無視するために使われる
空っぽにしたい場合に使われ、出力先としても書き込まれず保存されない
パイプライン
複数のコマンドを連携させる仕組み
$ ls -l | less
※lsコマンドの結果をlessコマンドに送る。
パーミッションを操作できる
ディレクトリのパーミッション表示する
ls -ld ディレクトリ名(※-dオプションをつける)
オーナー | グループ | その他 |
---|---|---|
rwx | r-x | r-x |
権限を変更する
$ chmod a+w ファイル名
▶ディレクトリのパーミッション
記号 | 意味 |
---|---|
r | 読み取り |
w | 書き取り |
x | 実行 |
▶ユーザー指定
記号 | 意味 |
---|---|
u | オーナー |
g | グループ |
o | その他 |
a | ugoすべて |
su
:スーパーユ-ザーとも呼ばれる、rootユーザー
sudo
:一般ユーザーにスーパーユーザーの権限を与えるコマンド
プロセス・ジョブを管理できる
メモリ上で実行状態にあるプログラムの確認=プロセス
$ ps
シェルを一定時間停止するコマンド
$ sleep 秒
バックグラウンドプロセス・ジョブを終了する
kill %ジョブ番号 またはプロセスID
シェルスクリプトを使う
シェルスクリプトとは
コマンドラインにあらかじめ記述しておくファイル 定期的な作業には向く
実行権限をつけておく必要がある
種類は.sh
#!/bin/bash
シバンで始まる
#!で書かれた後の「bin/bash」でコマンドを実行する
echo:処理の実行結果を出力する際に用いられる
$ echo 'Hello'
相手に入力を求める
$ read
ファイルの読み取り
ファイルの内容をwhile
コマンドにリダイレクトして、
read
コマンドを使って内容を一行ずつ読み取る
#!/bin/bash
while read line
do
echo $line
done < file.txt