魔法使いの卵

WEBエンジニアの卵の成長記録

黒い画面と少し仲良くなれるきっかけ

はじめに

  • この記事は株式会社アイスタイル アドベントカレンダー8日目の記事です。
  • 新卒2年目の@Raichel395がゆるゆる書いてます。
  • 今日は約2年前エンジニアになりたての僕が怯えて友達になった黒い画面の話です。
  • 黒い画面と友達になるためにはどうしたらいいのかを簡単にまとめました。

このエントリーのターゲット

  • 黒い画面使ったこと無い人
  • 黒い画面が怖い人
  • 黒い画面に興味ある人

このエントリーの目指すところ

  • 黒い画面怖い人が少しだけ黒い画面と仲良くなれる(といいなぁ)
  • なにをしているのかざっくり理解できる(といいなぁ)
  • 黒い画面でTwitterができるようになる(といいなぁ)

環境

  • OSX Yosemite 10.10.4

黒い画面怖いですか?

  • →「YES」or「はい」
    • という設定で進めます。

黒い画面が怖い理由

  • 個人的に黒い画面が怖かった理由を書いていく
    • 黒い画面なんて普段の生活で見ないので怖い
    • 触るきっかけが無かったので怖い
    • パソコンが壊れたと思えて怖い
    • 間違えた操作すると壊れそうで怖い
    • 黒い画面ってクリックしても何もおきなくて怖い
    • コマンドで何してるのかわからなくて怖い

黒い画面の怖さを振り払うために必要なたった2つのこと

  • 黒い画面を使うきっかけ
  • 壊れてもいい環境

あとで本番サーバ内でこれやっておいてよ

  • なんて言われて失敗する前にいっぱい失敗しておこう。
  • 黒い画面はおもったより僕達と仲良くしたがっている。

というわけで、黒い画面でTwitterやってみよう

  • 他にも色々あると思うけどTwitterを選んだ理由って?
    • 普段使ってるwebサービスなので使い方がわかる
    • TweetやRTやDMなどコマンドでも親しみが持てそう

壊れてもいい環境(仮想マシン)を作るために用意するもの

  • VirtualBox とは?
VirtualBoxとは、オープンソースの仮想化ソフトウェアの一つ。
コンピュータ上に仮想的なコンピュータ(仮想マシン、VM:Virtual Machine)を構築し、
その中で任意のOSを起動して操作することができる。


  • Vagrant とは
仮想マシンを動かす仮想化ソフトのラッパーツール。
VirtualBoxなどの仮想化ソフトの操作を簡単に代行してくれる。

※ここから黒い画面の作業になります

仮想マシン用のディレクトリを作成する

  • 仮想マシンの情報を一元管理するディレクトリを作成

  • ホームディレクトリ配下にVagrantのディレクトリを作成

  • OSの種類ごとにディレクトリを作成
  • 利用するOS名でディレクトリを作成します
  • 作成したディレクトリに移動する

  • 1つ1つコマンドを叩いてもいいのですが1ライナーで済ませたほうがスマートです

  • 叩くコマンドを日本語にしてみた

ディレクトリを作成 ディレクトリがなくても作るオプション 作成するディレクトリパス と 移動する ディレクトリパス
  • 実際に叩いたコマンド
mkdir -p ~/Vagrant/CentOS/CentOS7.1 && cd ~/Vagrant/CentOS/CentOS7.1

仮想マシンのOSを追加する

  • boxとは?
仮想マシン起動の際にベースとなるイメージファイルのこと。
主にOSイメージから作成されており仮想マシンのOSとして利用する。
  • boxを追加コマンドのイメージ
  • 叩くコマンドを日本語にしてみた
boxを追加する box名 boxの場所
vagrant box add CentOS71 https://github.com/CommanderK5/packer-centos-template/releases/download/0.7.1/vagrant-centos-7.1.box

仮想マシンの設定ファイルを作成する

  • 設定ファイルは1コマンドで自動生成される

  • Vagrantfileを作成する

  • 叩くコマンドを日本語にしてみた

vagrant init box名
  • 実際に叩いたコマンド
vagrant init CentOS71

仮想マシンを起動してみる

  • 以下のコマンドで仮想マシンが起動する
vagrant up

仮想マシンに接続する

  • 以下コマンドで仮想マシンに接続する
vagrant ssh

必要なパッケージを入れる

  • 今回はgitが必要なのでgitを入れます

  • gitとは

    プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。

wiki

  • 叩くコマンドを日本語にしてみた
管理者権限を使う パッケージ管理システムで インストールし 問い合わせはすべて「yes」とする パッケージ名
  • 実際に叩いたコマンド
sudo yum install -y git

rbenvを入れる

  • rbenvとは
rubyのversionを切り替えれるコマンド
  • gitでローカルに複製する

  • 叩くコマンドを日本語にしてみた

複製する 対象のURL
  • 実際に叩いたコマンド
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

パスを通す

  • 叩くコマンドを日本語にしてみた
出力する '出力したい文言' 追記する 対象のファイル
出力する '出力したい文言' 追記する 対象のファイル
ログインシェルの再起動
  • 実際に叩いたコマンド
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL -l

ruby-buildと必要なものを入れる

  • ruby-buildとは

rbenv のプラグインです。rbenv install というコマンドは ruby-build が提供しています

rbenv + ruby-build はどうやって動いているのか

  • 叩くコマンドを日本語にしてみた
複製する 対象のURL
管理者権限を使う パッケージ管理システムで インストールし 問い合わせはすべて「yes」とする パッケージ名
  • 実際に叩いたコマンド
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
sudo yum -y install libffi libffi-devel zlib zlib-devel openssl openssl-devel readline-devel

rubyを入れる

  • 叩くコマンドを日本語にしてみた
rbenvで インストールする バージョン
  • 実際に叩いたコマンド
rbenv install 2.2.2

仮想マシンのデフォルトのrubyとして設定する

  • 叩くコマンドを日本語にしてみた
rbenv システム全体 バージョン
  • 実際に叩いたコマンド
rbenv global 2.2.2

rubyのversionを確認する

  • 叩くコマンドを日本語にしてみた
確認したいもの バージョン
  • 実際に叩いたコマンド
ruby -v
  • ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]が入ったのがわかります

twを入れる

  • twとは
黒い画面でTwitterができるツール
  • gemとは
rubyのパッケージ管理システム
  • twを入れる
  • 叩くコマンドを日本語にしてみた
gem インストールする パッケージ名
  • 実際に叩いたコマンド
gem install tw

ログインする

  • ログインコマンド
tw --user:TwitterアカウントID
  • 認証用のURLが生成されるためブラウザで確認する
open https://api.twitter.com/oauth/authorize?oauth_token=xxxxxxxxxxxxxxxxxxxxxxxxxx
  • 以下サンプル画像のようなPIN Numberが表示されるのでそれを入力する

f:id:raichel:20151207234025p:plain

input PIN Number: xxxxxxx

Twitterコマンド

  • 個人的によく使ってるコマンド
やりたいこと コマンド
Tweetする tw Tweetしたいこと
任意のTwitterアカウントIDのTLを見る tw @対象のTwitterアカウントID
Tweetを検索する tw --search=検索キーワード
Tweetを流し見する tw --stream
検索に一致したTweetを流し見する tw --stream:filter=検索キーワード,検索キーワード --silent
DMのやりとり一覧を見る tw --dm
任意の相手にDMする tw --dm:to=DM送信先TwitterアカウントID "いいたいこと"
任意のTwitterアカウントのTweetIDを出す tw @Twitterアカウント --id
TweetIDでリプライする tw "@対象のTwitterアカウントID 言いたいこと" --id=TweetID
TweetIDでいいね!する tw --fav=TweetID
TweetIDでRTする tw --rt=TweetID

公式のコマンドを見る

所感

  • かなりざっくりと書きました。
  • 黒い画面を使いはじめる取っ掛かりになればいいなーって思います。
  • 実際この手順で行けば動作すると思います(多分)
  • あとは色々触って試してぶっ壊して!!少しつ友達になってください。
  • 色々必要な知識とか省略してるので、更に仲良くなるきっかけになればなぁと思ってます。

最後に

  • 明日は@kubotakNeutronを使った爆速レイアウトです