Terminalを縦に分割できるiTerm2の設定と使い方メモ
お知らせ: 新しくホームページを作りました! これから記事を増やしていくつもりなので, 良かったら見て下さい!! ホームページはこちらになります.
Terminalアプリを、iTerm2に乗り換えてみました。
理由としては、やっぱり縦分割ができるところ!!
あとsolarizedもあるし!
ってことでダウンロードはここからしました。
そしてsolarizedはここから。
Click Here To Download Latest Versionってところをクリックすると、solarizedのcolorschemeがたくさん入ったzipがダウンロードできますよー。たくさんっていうのは、いろいろなところで使えるように用途別にあるってことです。
ちょっと脱線しましたが、ダウンロードしたiTerm2をアプリケーションファイルにいれて、右クリックから開きます。
次に、colorschmeをかえるために、ツールバーのPreferenceをおして、Profileを押します。
左下の+ボタンを押して新しくcolorschemeを追加します。名前はお好みで。solarized-dark
とかにしておけば、無難です。
その後は、Generalの欄から、Colorsの欄に移動して、下のほうのLoad Presets
を押して、Importを押します。そして、さっきダウンロードしたzipを展開して、iTerm用のSolarized Dark.itermcolorsを選びます。
選んだら、もう一回Load Presets
をおして、Solarized Darkを選択します。これで後はデフォルトにするだけです。デフォルトにするには、+ボタンの2つ右のOther Actions
のボタンから、Set as Default
を選択すればできます。
最後にiTerm2のショートカットの説明を。
ショートカット | 内容 |
---|---|
⌘+n | 新しいウィンドウ |
⌘+t | 新しいタブ |
⌘+d | 縦分割 |
⌘+shift+d | 横分割 |
⌘+w(or Ctrl+d) | ウィンドウの削除。括弧内は、iTerm2自体のショートカットではないかも |
⌘+[(or ] or 矢印キー) | 分割されているウィンドウのフォーカスを移動 |
Ctrl+tab | タブ間の移動 |
⌘+数字 | 数字の割り当てられたタブに移動 |
⌘+enter | フルスクリーン |
頻繁に移動するディレクトリを登録しておくシェルスクリプト書きました
お知らせ: 新しくホームページを作りました! これから記事を増やしていくつもりなので, 良かったら見て下さい!! ホームページはこちらになります.
Terminalで作業するときに、ファイルが増えてくると、必然的に階層が深くなってしまって、そこに移動するのに一苦労。みたいになってきたので、頻繁に使うフォルダを登録して、そこにジャンプするようなシェルスクリプトを書きました。とても簡単ですが、地味に便利です。
まず、自分のいるところをmarkするコマンド。
#!/bin/sh pwd > ~/.mark_dir
これで、markをした時点でいる場所のパスが、ホームフォルダの、.mark_dirというファイルに保存されます。
そして、次にその場所に飛ぶためのコマンド。
#!/bin/sh while read line do dir=${line} done < ~/.mark_dir cd ${dir}
これは、.mark_dirの中身を読んで、そこに飛ぶようになっています。 自分はそれぞれ、mark、jumpという名前で保存しています。
ここで、一つ問題があって、普通に
$ jump
とかやってもmarkした場所に移動出来ません。どうやら、シェルスクリプトないでcd
を使いたいときは、
$ . jump
という風に、最初に.(ドット)
を付けないと行けないようです。
ただ、毎回つけるのは面倒くさいので、自分は.bash_profileに、以下の文を加えています。
alias jump='. jump'
これで、jump
と書いたときは. jump
と認識してくれます。
screenコマンドの使い方についてのメモ
お知らせ: 新しくホームページを作りました! これから記事を増やしていくつもりなので, 良かったら見て下さい!! ホームページはこちらになります.
screenコマンドについての使い方メモ。
sshでつないで作業している時に、長時間プログラムを実行するときは、通信が切れてしまいますよね。そんな時に便利なのが、screenです。screenコマンドを使うと、仮想的にTerminalを作れて、任意のタイミングで入ったり出たりできます。(用語的に正しいかは定かでは無いですが、仮想的なTerminalのことを、以下socketと呼びます。)
よって、長時間プログラムを実行するときは、まずsshでリモート環境に入って、screenコマンドでsocket作ります。その上で、プログラムを実行しておいて、そこから出れば、好きなときに入り直せます。そして、プログラムはもちろん中断されません。
ということで、使い方を。
一番単純なのは、
$ screen
とすることです。これでもう新しいsocketができたことになります。では、このsocketを消すために、ctrl+d
を押してみましょう。すると、
[screen is terminating]
と表示され、元の画面に戻ったと思います。ただ、これだとさっきのsocketは消えてしまっているので、次はsocketを消さないでsocketから出るようにしましょう。もう一度、screen
コマンドを打ってみましょう。そして、次は、ctrl+a, d
と押してみてください。今度は、
[detached]
と表示され、また元の画面に戻ったと思います。では、さっきのsocketが残っているか確認するために、
$ screen -ls
と打ってみましょう。自分の環境では、以下のように表示されました。
There is a screen on: 23277.ttys001.hogehoge (Detached) 1 Socket in ・・・
(hogehogeは自分のパソコンの名前になると思います。1 Socket inの後の点々の部分には、このソケットが保存されている場所が表示されています。)
さて、socketの名前が一つ書いてあって、その右に(Detached)と書いてあります。これは、socketを離れていることを示します。ということで、うまくいっていますね。ちなみに、socketが無いときは、
No Sockets found in ・・・
と表示されます。
では、detachしたsocketに戻ってみましょう。今回の場合、socketの名前が、23277.tty001.hogehoge
となっているので、以下のような戻り方があります。
$ screen -r $ screen -r 23277 $ screen -r tty001 $ screen -r 23277.tty001
もちろん、23277.tty001.hogehoge
と、名前全体を書いてもいいのですが、めんどくさいです。一番上が明らかに簡単ですが、これは、socketの数が1つの時だけ可能な書き方になります。また、複数作った時に、tty001
などがかぶった場合は、3つめの書き方ではダメです。名前の、番号の部分はおそらくかぶらないので、(経験的にかぶって無いだけなので、確証はないです)2つめが割りとらくだと思います。では、次に自分で好きな名前をつけてみましょう。自分で名前をつけることのメリットは、
- 何をやっているsocketかをわかりやすくできる。
- screen -r socket-nameみたいにできるので、戻りやすい。
では、実践として、次にように打ってみましょう。
$ screen -S test
確認してみると、自分は以下の様なsocketができていました。
23440.test (Detached)
この場合、作ったsocketに戻るのには、
$ screen -r test
すればいいことになります。もちろん番号でも大丈夫です。
基本はこんな感じです。では、最後にsocketを外から消す方法を書きます。
自分で指定した名前のsocketを消したい場合は、
$ screen -S socke-name -X quit
として(scket-nameのところに消したいsocketの名前をいれます。-r
の時みたいに、番号だけとかで大丈夫です)、socketが一つしか無い場合は、
$ screen -r -X quit
とすれば消えます。
また、一気に全て消したい場合は、socketが保存されているフォルダ(screen -ls で表示させた時に、書いてある場所)の中身を全て消すとsocketを消せます。
以上、screenコマンドの使い方解説でした。