Rails Tutorial 0章:事前基礎知識学習3


事前基礎知識編 Unixコマンド

Unixコマンドとは?

ターミナルにコマンド打つことでコマンドラインでOSを操作する為のコマンド群です。
実は学生時代にUNIXコマンドを少し学びました。
正直言って使う機会があまりなかったので簡単なコマンド以外はほぼ全て忘れてました。

まず最初にUNIXコマンド入門講座の動画を見ながら復習しました。

アウトプットとして簡単に基礎的な内容をつらつらと書いていきますが、
私の日記を見るよりもUNIXコマンド入門講座を見た方がベターです。

Rails Tutorialの学習をコツコツと10章までオンラインテキストで進めていますが、
正直言って基礎的なコマンドしかあまり使っていないです。
最低限、Rails Tutorialをやる為だけだったら4つのコマンドを覚えておけば十分な気がします。

最低限覚えておくと良いコマンド
cd    移動
ls    フォルダ内のファイルを確認
touch   ファイルの作成
c9     cloud9のエディタを開く

上の4つのコマンドの中でc9だけは自分でインストールする必要があります。

npm install -g c9
このコマンドでインストールするとc9コマンドを使えるようになります。
c9 <ファイル> 
c9のテキストエディターでファイルが開かれます。
ここから下は学習した内容の簡単なアウトプットの一部です。
ubuntu:~/environment $ pwd
/home/ubuntu/environment

$以降がUNIXコマンドです。 
例えばpwd(present working directoryの略)と打つと自分が今いる場所を教えてくれます。
私はパソコンの中で/home/ubuntu/environmentという場所にいるという事です。
ubuntu:~/environment $ cd /
ubuntu:/ $ 

cd (change directoryの略)をコマンドで別の場所に移動できます。
/というのはルートディレクトリと呼ばれ、一番上にあるディレクトリ(フォルダ)という意味です。

cd / はルートディレクトリに移動しなさいという意味になります。
ubuntu:/ $ ls
bin  boot  dev  etc  home  initrd.img  initrd.img.old  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  snap  srv  sys  tmp  usr  var  vmlinuz  vmlinuz.old

ls(list segmentsの略)コマンドでフォルダの中に何があるのかを見る事が出来ます。
$ ls -l
total 88
drwxr-xr-x   2 root root  4096 Sep 24 06:36 bin
drwxr-xr-x   3 root root  4096 Oct 15 06:25 boot
.
.
.
各コマンドにはオプションを付ける事が出来ます。 -l がオプションです。
lsコマンドではどんなオプションが利用できるかは --helpオプションで調べられます。

$ ls --help 
.
.
-a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..
      --author               with -l, print the author of each file
  -b, --escape               print C-style escapes for nongraphic characters
      --block-size=SIZE      scale sizes by SIZE before printing them; e.g.,
                               '--block-size=M' prints sizes in units of
                               1,048,576 bytes; see SIZE format below
.
.
.

UNIXコマンドを制する者はOSを制す
映画でかっこよく黒画面に文字を打ってパソコン操作するhackerみたくなれるかも?
私はそんなの目指してないので基礎だけで充分( ^ω^)・・・。
I love Graphical User Interfaceです。

動画を見た後にRails Tutorial 基本を学ぶ!前提知識シリーズ『開発基礎編』(980円)を購入して学習しました。

動画は分かりやすいので理解できたような錯覚に陥りますが、実際にコマンドを打って実践してみると身についてなかったりします。『動画を見る⇒止めて実践』を繰り返すと本よりも時間がかかるような・・・。

私はRails Tutorial 基本を学ぶ!前提知識シリーズ『開発基礎編』(980円)で学ぶ方がオススメです。

基本的なコマンドを紹介
pwd    場所を表示
cd    移動
ls    フォルダ内のファイルを確認
cat    ファイルの中身を閲覧
touch   ファイルの作成
mkdir  フォルダを作成
rm    ファイル削除
rmdir  空のフォルダを削除
curl   コンテンツをインターネット上からダウンロード
gunzip  ファイルの圧縮・解凍
番外編: 疑問に思ったコマンド達

Rails Tutorialやってるとなんかインストールするときに使うコマンドいっぱいあるんですよね。

gem  
yum  
rpm 
npm  
yarn 
pip 
apt
などなど...

@chihiroさんのQiita記事で少し説明されていました。

OSに何らかのソフトウェアをインストールする場合。Windowsだとインストーラーをダウンロードし、
そのインストーラーを使ってソフトウェアをインストールします。Linuxではインストーラーではなく、パッケージ管理システムでパッケージ(ソフトウェア)をインストールします。yumはRedHat系ディストリビューションのパッケージ管理システムで使用されるツール(コマンド)です。

パッケージとは
ソフトウェアに関わるファイル一式がまとまったものをパッケージといいます。「ソフトウェアに関わるファイル」には、設定ファイルやドキュメント、プログラム本体、プログラムが動くために必要なライブラリなどが含まれます。パッケージには形式があり、その形式はディストリビューション毎に異なります。

  • yumとapt

Windowsで例えるとWindows Update、rpm/deb形式で提供されているアプリのインストールで使う。
引用:https://oshiete.goo.ne.jp/qa/9647351.html

ディストリビューション OS パッケージ インストール用ツール
Redhat系 Cent OS/Fedora rpm RPM/yum/dnf
Debian系 Ubuntu deb dpkg/dselect/apt
  • pip/gem/npmなど・・

gem は ruby で書かれたプログラムのために、パッケージを管理するコマンドです。
引用:https://oshiete.goo.ne.jp/qa/9647351.html

@kitsuyuiさんのQiita記事

言語 パッケージ インストール用ツール
Python wheel/egg pip/pipenv
Ruby gem gem/bundler
Go - go get/godep
Node.js - npm/bower
perl - cpan/cpanminus
PHP phar pear/composer
Java jar maven

整理できて少しだけスッキリしました。